Liebe Forumsfreunde,
ich bräuchte ein Möglichkeit, um mit einem Makro zum letzten Sheet zu wechseln, bzw. es zu aktivieren.
Meine Sheet-Namen bestehen jeweils aus Jahreszahlen, also z.B.
Sheet1-Name = 2020
Sheet2-Name = 2021
Sheet3-Name = 2022
Sheet4-Name = 2023
Wechseln und aktivieren möchte ich nun per Makro zum Sheet mit der höchsten Zahl im Namen, in meinem Beispiel als zum Sheet "2023".
Wer kann mir hier mit einem einfach Code helfen?
Herzlichen Dank schon einmal im voraus
Rupp
Mit Makro Sheet mit höchster Zahl im Sheet-Namen aktivieren
Moderator: Moderatoren
Re: Mit Makro Sheet mit höchster Zahl im Sheet-Namen aktivieren
Krass: ChatGPT hat mir mal eben das Makro geschrieben:
Code: Alles auswählen
Sub AktiviereLetztesJahresblatt
Dim oDoc As Object
Dim oSheets As Object
Dim oSheet As Object
Dim i As Integer
Dim maxYear As Integer
Dim maxYearSheet As Object
oDoc = ThisComponent
oSheets = oDoc.getSheets()
maxYear = 0
For i = 0 To oSheets.getCount() - 1
oSheet = oSheets.getByIndex(i)
If IsNumeric(oSheet.Name) And CInt(oSheet.Name) > maxYear Then
maxYear = CInt(oSheet.Name)
maxYearSheet = oSheet
End If
Next i
If Not IsEmpty(maxYearSheet) Then
oDoc.CurrentController.setActiveSheet(maxYearSheet)
End If
End Sub
Re: Mit Makro Sheet mit höchster Zahl im Sheet-Namen aktivieren
Hallo
falls das einfach nur das letzte Tabellenblatt ist, gehts krass mit 5 Zeilen:
falls das einfach nur das letzte Tabellenblatt ist, gehts krass mit 5 Zeilen:
Code: Alles auswählen
sub activate_last_sheet
doc = thisComponent
sheets = doc.Sheets
doc.CurrentController.setActiveSheet(sheets(sheets.Count -1))
end sub
LO7.4.7.2 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO7.6.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO7.6.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: Mit Makro Sheet mit höchster Zahl im Sheet-Namen aktivieren
Danke Karolus,
leider kann es bei mir sein, dass das Sheet mit der höchsten Jahreszahl nicht gleichzeitig das letzte Sheet ist.
Deshalb war der kompliziertere Ansatz nötig!
leider kann es bei mir sein, dass das Sheet mit der höchsten Jahreszahl nicht gleichzeitig das letzte Sheet ist.
Deshalb war der kompliziertere Ansatz nötig!