🙏 Helfen Sie mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱
🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
LibreOffice Basic
LibreOffice Basic
Moin moin,
ich versuche erfolglos, mittels LibreOffice (6.4) Basic (LO-Basic) eine Zeile in Calc zu löschen. Als prinzipielles Beispiel:
Ich habe nur 1 Tabellenblatt und 5 belegte, lückenlose Zeilen. Ich will die Zeile 3 löschen. Da ich im Netz rein gar nichts dazu gefunden habe, auch nicht in der LibreOffice Hilfe für Basic, auch nicht in der Analyse einer Makro-Aufzeichnung, brauche ich eure Hilfe. Ich habe versucht, den VBA-Befehl dazu zu verwenden – geht nicht. Könnte mir jemand meinen Code so korrigieren, dass ich damit eine Zeile löschen kann und mir vielleicht kurz erläutern, was an meinem Code falsch oder verbesserungsfähig ist. Für jede noch so kleine Hilfe bedanke ich mich vielfach im voraus:
Option Explicit
Option VBASupport 1
sub ZeileLoeschen()
dim doc as object
dim sheet as object
dim row as object
doc = ThisComponent
sheet = doc.sheets(0)
row = row(4)
row.Delete
end sub
ich versuche erfolglos, mittels LibreOffice (6.4) Basic (LO-Basic) eine Zeile in Calc zu löschen. Als prinzipielles Beispiel:
Ich habe nur 1 Tabellenblatt und 5 belegte, lückenlose Zeilen. Ich will die Zeile 3 löschen. Da ich im Netz rein gar nichts dazu gefunden habe, auch nicht in der LibreOffice Hilfe für Basic, auch nicht in der Analyse einer Makro-Aufzeichnung, brauche ich eure Hilfe. Ich habe versucht, den VBA-Befehl dazu zu verwenden – geht nicht. Könnte mir jemand meinen Code so korrigieren, dass ich damit eine Zeile löschen kann und mir vielleicht kurz erläutern, was an meinem Code falsch oder verbesserungsfähig ist. Für jede noch so kleine Hilfe bedanke ich mich vielfach im voraus:
Option Explicit
Option VBASupport 1
sub ZeileLoeschen()
dim doc as object
dim sheet as object
dim row as object
doc = ThisComponent
sheet = doc.sheets(0)
row = row(4)
row.Delete
end sub
Re: LibreOffice Basic
Gruß,
mikele
mikele
Re: LibreOffice Basic
... und dann verstehst du vermutlich diesen Code:
Code: Alles auswählen
sub ZeileLoeschen()
dim doc as object
dim sheet as object
dim rows as object
doc = ThisComponent
sheet = doc.sheets(0)'Tabellenblatt 1
rows = sheet.rows
rows.removeByIndex(2,1)'( nIndex as long, nCount as long ) der Index von Zeile 1 = 0, Zeile 2 = 1, Zeile 3 = 2 usw., nCount ist die Anzahl der Zeilen ab hier, also eine Zeile wird gelöscht -> removeByIndex(2,1)
end sub
Windows 11: AOO, LO Linux Mint: AOO, LO
Re: LibreOffice Basic
Danke für die Hilfe bis hierher, aber der Code funzt noch immer nicht. Bei der Zeile sheet=doc.sheet(0) erscheint die Fehlermeldung: Laufzeitfehler 423 - (Eigenschaft oder Methode nicht gefunden).Mein Code sieht bisher so aus:
Option Explicit
Option VBASupport 1
sub ZeileLoeschen()
' MsgBox " Funktioniert nicht!"
dim doc as object
dim sheet as object
dim rows as object
doc = ThisComponent
sheet = doc.sheets(0)
rows = sheets.rows ' Laufzeitfehler 423 - (Eigenschaft oder Methode nicht gefunden)
rows.removeByIndex(4,1)
end sub
Option Explicit
Option VBASupport 1
sub ZeileLoeschen()
' MsgBox " Funktioniert nicht!"
dim doc as object
dim sheet as object
dim rows as object
doc = ThisComponent
sheet = doc.sheets(0)
rows = sheets.rows ' Laufzeitfehler 423 - (Eigenschaft oder Methode nicht gefunden)
rows.removeByIndex(4,1)
end sub
Re: LibreOffice Basic
Hallo
rows = sheets.rows
Das rote s kannst du weglassen!
rows = sheets.rows
Das rote s kannst du weglassen!
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: LibreOffice Basic
Juchuuuuuuuu! Es funktioniert. Vielen herzlichen Dank an Karolus und alle anderen, die sich die Mühe gemacht haben, einem Greenhorn auf die Hufe zu helfen. Ich hoffe, ich werde auch ein Mal so kompetent wie ihr und kann dann vielleicht auch anderen helfen. Nochmals vielen Dank!
Trudchen
Trudchen
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.