🙏 Helfen Sie jetzt 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!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

[gelöst] Makro CALC letzte Zeile in vorgegebenen Bereich

Alles zur Programmierung im LibreOffice.
Antworten
craig
* LO-Experte *
Beiträge: 1137
Registriert: Do 21. Apr 2016, 11:42

[gelöst] Makro CALC letzte Zeile in vorgegebenen Bereich

Beitrag von craig » Sa 15. Okt 2016, 19:46

Hallo,

im Anhang befindet sich eine Datei mit einem Makro, welches mir die
letzte befüllte Zelladresse in einem vorgebenen Bereich wiedergeben soll.

Dieses funktioniert nicht.
Es wird bei Ausführung immer das gesamte Blatt berücksichtigt,
anstelle des angegebenen Bereichs (A2:A10).

Code: Alles auswählen

Sub Main
Dim oDoc
Dim oCell
Dim oCursor
Dim aAddress

odoc =thiscomponent
'oSheet=oDoc.getCurrentController.ActiveSheet
oSheet=oDoc.getSheets.getByIndex(0)
  oCell = oSheet.getCellRangeByName("A2:A10")

  oCursor = oSheet.createCursorByRange(oCell)
  oCursor.gotoEndOfUsedArea(true)

  aAddress = oCursor.RangeAddress

msgbox "Spalte " & aAddress.EndColumn & CHR$(10) & "Zeile " & aAddress.EndRow

End Sub
LastRow in Spalte A.ods
(11.98 KiB) 196-mal heruntergeladen
Was ist erforderlich damit nur dieser Bereich berücksichtigt wird?

Gruß

Craig
Zuletzt geändert von craig am Sa 15. Okt 2016, 22:04, insgesamt 1-mal geändert.
Gruß

Craig

Nie die Sicherungskopie vergessen!

════════════════════════════════════════════════
WIN 10 Pro 64-Bit • LO 7.4.5.1 (x64) • AOO 4.1.8

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Makro CALC letzte Zeile in vorgegebenen Bereich

Beitrag von F3K Total » Sa 15. Okt 2016, 21:54

Hi,
versuchs mal so:

Code: Alles auswählen

Sub Main
    odoc = thiscomponent
    oSheet = oDoc.Sheets(0)
    oCellRange = oSheet.getCellRangeByName("A2:A10")
    oEmptyCells = oCellRange.queryEmptyCells
    oFirstEmptyCell = oEmptyCells(0).getCellByPosition(0,0)
    sColumn = oFirstEmptyCell.Columns(0).Name
    aCelladdress = oFirstEmptyCell.Celladdress
    msgbox ("Ergebnis:" & CHR$(10) & "Spalte " & oFirstEmptyCell.Columns(0).Name & " (Nr. " &aCelladdress.Column + 1 &")" & CHR$(10) & "Zeile " & aCelladdress.Row + 1,64,"Erste leere Zelle")
End Sub
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO

craig
* LO-Experte *
Beiträge: 1137
Registriert: Do 21. Apr 2016, 11:42

[gelöst] Re: Makro CALC letzte Zeile in vorgegebenen Bereich

Beitrag von craig » Sa 15. Okt 2016, 22:03

Hallo R,

funktioniert perfekt!

Vielen Dank.

Gruß

Craig
Gruß

Craig

Nie die Sicherungskopie vergessen!

════════════════════════════════════════════════
WIN 10 Pro 64-Bit • LO 7.4.5.1 (x64) • AOO 4.1.8


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.



Antworten