Der einfache VBA- Befehl zum Anzeigen eines anderen Arbeitsblattes Wie man in EXCEL unter VBA zu einem anderen Arbeitsblatt (Sheet) wechselt hat sich sicher schon herumgesprochen (man kann es ja notfalls auch aufzeichnen): Sub Makro1() Sheets(4).Select ' ... oder Worksheets(4).Select End Sub Sub Makro2() Sheets("Mein_Arbeits_Blatt").Select ' ... oder Worksheets("Mein_Arbeits_Blatt").Select End Sub Das ist ja auch nicht falsch so. Was aber, wenn im ersten Fall (Makro1) die Arbeitsmappe weniger als vier Blätter hat? Oder aber wenn im zweiten Fall (Makro2) die Mappe überhaupt kein Sheet mit diesen Namen hat? Natürlich! Excel meckert rum und der User erhält eine Fehlermeldung! Was ist zu tun? Anmerkung:
Sub Makro11() ' Testen ob es mindestens 4 Arbeitsblätter ' in der Mappe gibt und ... If Sheets.Count < 4 Then ' ... wenn nein: eine entsprechende Fehlermeldung ausgeben: MsgBox " Umschalten auf Blatt 4 nicht möglich ! ", _ 48, " Arbeitsblatt nicht vorhanden :-( " Else ' ... wenn ja: Anzeige auf das 4-te Blatt umschalten. Sheets(4).Select End If End Sub Sub Macro12() ' Hilfsvariablen Dim i As Integer Dim bExists As Boolean ' Testen ob's ein Sheet mit dem Namen ' "Mein_Arbeits_Blatt" gibt und ... For i = 1 To Sheets.Count If Sheets(i).Name = "Mein_Arbeits_Blatt" Then bExists = True: Exit For End If Next i If bExists Then ' ... wenn ja: Anzeige auf dieses Blatt umschalten Sheets("Mein_Arbeits_Blatt").Select Else ' ... wenn nein: ein solches Blatt erstellen. Beep Sheets.Add ActiveSheet.Name = "Mein_Arbeits_Blatt" End If End Sub Alternative: ' Hilfsvariablen Dim ws As Worksheet Dim bExists As Boolean ' Alle vorhandenen Arbeitsblätter durchlaufen For Each ws In Worksheets If ws.Name = "Mein_Arbeits_Blatt" Then bExists = True: Exit For End If Next ... Dieser Tipp wurde bereits 267.935 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
Neu! sevCommand 4.0 Professionelle Schaltflächen im modernen Design! Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Tipp des Monats Januar 2025 Dieter Otter Zeilen einer MultiLine-TextBox ermitteln (VB.NET) Dieser Zipp zeigt, wie man die Zeilen einer MultiLine-TextBox exakt so ermitteln kann, wie diese auch in der TextBox dargestellt werden. TOP Entwickler-Paket TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR... |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |