GELÖST - Zeile löschen Makro funktioniert nur fast

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

daswarwas
*
Beiträge: 12
Registriert: Mi, 16.12.2015 11:51

GELÖST - Zeile löschen Makro funktioniert nur fast

Beitrag von daswarwas »

Hallo an alle,

nachdem mir die Suchfunktion in diesem Forum bei einigen Aufgaben bereits wunderbar geholfen hat, stehe ich nun vor einem kleinen (sicher lächerlichen) Problem. Ich habe das folgende Makro geschrieben und habe das Problem, dass immer die Zeile unter der angegebenen gelöscht wird. Die Zählung in Basic entspricht ja wohl nicht der Nummerierung in der Tabelle (fängt bei 0 an, nicht bei 1). Jetzt sind meine Kenntnisse aber leider so rudimentär, dass ich nicht weiss, wie ich die Zahl "i" im Makro um 1 verkleinern kann...kann jemand helfen?

Danke und Gruß, Heiko

Sub DELETErow
Dim oDoc as Object, oSheet as Object
Dim oZelle as Object
oDoc = ThisComponent
oSheet = oDoc.sheets(0)
oSheet.unprotect("Passwort")
Dim i As String
i = InputBox("Welche Zeile möchten Sie löschen", "Löschvorgang")
If i = "" Then Exit Sub
osheet.rows.removeByIndex(i,1)
oSheet.protect("Passwort")
End Sub
Zuletzt geändert von daswarwas am Mi, 16.12.2015 16:33, insgesamt 2-mal geändert.
Karolus
********
Beiträge: 7532
Registriert: Mo, 02.01.2006 19:48

Re: Zeile löschen Makro funktioniert nur fast

Beitrag von Karolus »

Hallo

Gewöhnlich verkleinert man eine Zahl um 1, indem man von der Zahl 1 subtrahiert.

Code: Alles auswählen

osheet.rows.removeByIndex(i-1,1)
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
daswarwas
*
Beiträge: 12
Registriert: Mi, 16.12.2015 11:51

Re: Zeile löschen Makro funktioniert nur fast

Beitrag von daswarwas »

Hallo Karolus,

vielen Dank für Deine Rückmeldung. Das hatte ich natürlich schon versucht...allerdings mit der Fehlermeldung "Unzulässiger Wert oder Datentyp. Datentypen unverträglich."

Deshalb kam ich da nicht weiter und habe die Frage ins Forum gestellt...

Was läuft da falsch?

Danke und Gruß, Heiko
Karolus
********
Beiträge: 7532
Registriert: Mo, 02.01.2006 19:48

Re: Zeile löschen Makro funktioniert nur fast

Beitrag von Karolus »

Hallo

Was glaubst du, bewirkt `Dim i As String`

Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
daswarwas
*
Beiträge: 12
Registriert: Mi, 16.12.2015 11:51

Re: Zeile löschen Makro funktioniert nur fast

Beitrag von daswarwas »

Hallo,

Wie gesagt, mein Wissen ist rudimentär und ich taste mich da gerade ran. Zusammensuchen von Informationen, "Try and Error"...

Wenn ich es richtig verstehe, dann definiert DIM mir eine Variable und das STRING steht wohl dafür, dass die Variable ein Textformat ist, richtig? Dann ist es also keine Zahl mehr...

Wenn ich das richtig gefolgert habe, dann weiss ich jetzt, weshalb es nicht funktioniert. Aber was ist die Lösung? Wenn die Variable als ZAHL definiert ist, dann klappt das Löschen der Zeile nicht, oder?

Danke und Gruß, Heiko
daswarwas
*
Beiträge: 12
Registriert: Mi, 16.12.2015 11:51

Re: GELÖST - Zeile löschen Makro funktioniert nur fast

Beitrag von daswarwas »

Ok. Nach ein wenig Suchen und dem Test mit Dim i As Integer hat es geklappt! Das passiert halt, wenn man mit Halbwissen aus diversen Suchergebnissen etwas zusammenbastelt...
Antworten