Mit Makro Sheet mit höchster Zahl im Sheet-Namen aktivieren

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Mit Makro Sheet mit höchster Zahl im Sheet-Namen aktivieren

Re: Mit Makro Sheet mit höchster Zahl im Sheet-Namen aktivieren

von Rupp » So, 28.05.2023 10:31

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!

Re: Mit Makro Sheet mit höchster Zahl im Sheet-Namen aktivieren

von Karolus » Sa, 27.05.2023 21:02

Hallo
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

Re: Mit Makro Sheet mit höchster Zahl im Sheet-Namen aktivieren

von Rupp » Sa, 27.05.2023 18:14

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

Mit Makro Sheet mit höchster Zahl im Sheet-Namen aktivieren

von Rupp » Sa, 27.05.2023 17:41

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

Nach oben