Fehler verhindern ? Spalte einfügen ?

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

keksi1970
*****
Beiträge: 464
Registriert: So, 27.01.2008 11:47
Wohnort: DU

Fehler verhindern ? Spalte einfügen ?

Beitrag von keksi1970 »

Hi, ich weiss ja nun, dass ich mögliche Fhler von vornherein verhindern bzw eine Abfangmethode einführen sollte.

nun stellt sich folgendes Problem.

Mein Makro funktioniert nur, wenn :

Spalte O leer ist, sollte sie nicht leer sein, eine Spalte "O" einfügen, so dass Spalte AE1 die Überschrift "Spedition" hat.

Also : Verschiebe alle ausgefüllten Zellen so, dass Zelle AE1 den Wert Spedition hat, durchsuche aber nur Zeile 1 und blende nur Spalte O - AK ein. ( ????????? )

Gruß Andreas
Karolus
********
Beiträge: 7517
Registriert: Mo, 02.01.2006 19:48

Re: Fehler verhindern ? Spalte einfügen ?

Beitrag von Karolus »

Hallo Andreas
Also suchen wir in der ersten Zeile nach "Spedition",
ziehen den Spaltenindex der Fundstelle von dem Index der Spalte AE (30) ab,
und fügen vor O diese Anzahl an Spalten ein.
Dann blenden wir die Spalten vor O und hinter AK aus:

Code: Alles auswählen

Sub keksi_schieb_spedition
odoc = thiscomponent
osheet = odoc.sheets(0) '1.Tabblatt ?
for i = 0 to 99	
	if osheet.getcellbyposition(i,0).string = "Spedition" then
		ispedspalte = i : exit for
	end if 
next	
anzahlspalten = 30 - ispedspalte  '30 == Index Spalte AE
ospalten = osheet.getcolumns
if anzahlspalten > 0 then
ospalten.insertbyindex(14,anzahlspalten) '14 == Index spalte O
end if
for i = 0 to 13
	ospalten.getbyindex(i).isVisible = false 'Spalte A- N ausblenden
next
for i = 37 to 255
	ospalten.getbyindex(i).isVisible = false 'Spalte AL bis Ende ausblenden
next
End Sub
Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
keksi1970
*****
Beiträge: 464
Registriert: So, 27.01.2008 11:47
Wohnort: DU

Re: Fehler verhindern ? Spalte einfügen ?

Beitrag von keksi1970 »

danke karo, funktioniert soweit ganz gut, nur was mach ich, wenn SPEDITION in Spalte AG steht ?

gibt es so etwas wie deleteByIndex ?

Gruß Andreas
Karolus
********
Beiträge: 7517
Registriert: Mo, 02.01.2006 19:48

Re: Fehler verhindern ? Spalte einfügen ?

Beitrag von Karolus »

Hallo Andreas
keksi1970 hat geschrieben:danke karo, funktioniert soweit ganz gut, nur was mach ich, wenn SPEDITION in Spalte AG steht ?
gibt es so etwas wie deleteByIndex ?

Code: Alles auswählen

......
if anzahlspalten < 0 then
ospalten.removebyindex(14,abs(anzahlspalten)) '14 == Index spalte O
end if
.......
Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
keksi1970
*****
Beiträge: 464
Registriert: So, 27.01.2008 11:47
Wohnort: DU

Re: Fehler verhindern ? Spalte einfügen ?

Beitrag von keksi1970 »

das dingen heisst removeByIndex

OK, nu funktionierts wie gewünscht.

Tausend Dank

Grus Andreas
Antworten