Das Tabellenblatt öffnet sich nicht?

2 Antworten

Danke, habe es jetzt anders gelöst. Warum nun kein Problem zum finden des "Pfades" besteht, erschließt sich mir nicht. Schöne Feiertage wünsche ich. Gruß Wolly

Private Sub CommandButton1_Click()

   Dim wb As Workbook

   Dim ws As Worksheet

   Dim bestaetigung As VbMsgBoxResult

   Dim passwort As String

   ' Bestätigungsnachricht anzeigen und Passwort abfragen

   bestaetigung = MsgBox("Möchten Sie fortfahren?", vbQuestion + vbYesNo, "Bestätigung")

   ' Wenn der Benutzer auf "Ja" klickt

   If bestaetigung = vbYes Then

       passwort = InputBox("Geben Sie das Passwort ein:", "Passwortabfrage")

   End If

       ' Überprüfe das eingegebene Passwort

       If passwort = "123" Then ' Ersetze "dein_passwort" durch das gewünschte Passwort

   End If

   ' Pfad zur Datei mit "Tabelle8"

   Dim pfad_zur_datei As String

   pfad_zur_datei = "G:\Rheumaliga\1_Quartal_2024.xlsm"

   ' Öffne die Arbeitsmappe

   Set wb = Workbooks.Open(pfad_zur_datei)

   ' Überprüfe, ob die Arbeitsmappe geöffnet wurde

   If Not wb Is Nothing Then

       ' Überprüfe, ob das Arbeitsblatt "Tabelle8" existiert

       On Error Resume Next

       Set ws = wb.Sheets("Tabelle1")

       On Error GoTo 0

       ' Wenn das Arbeitsblatt gefunden wurde, aktiviere es

       If Not ws Is Nothing Then

           ws.Activate

       Else

           MsgBox "Das Arbeitsblatt 'Tabelle1' wurde nicht gefunden.", vbExclamation

       End If

   Else

       MsgBox "Die Datei konnte nicht geöffnet werden.", vbExclamation

End If

End Sub

Userform.Show sollte der entsprechende Befehl sein.

Da es eine xlsm-Datei ist, am besten dort beim Workbook.Open machen.

Wolly25 
Fragesteller
 28.03.2024, 18:07

Ich möchte eine Tabelle mit dem Code öffnen. Eine Userform ist hier nicht angezeigt. Geht vielleicht ein Codeabschnitt, der zur Lösung führen würde?

0
Suboptimierer  28.03.2024, 18:56
@Wolly25

Ich kann auf dem ersten Blick keinen Fehler im Code erkennen. Hast du den Pfad angepasst auf deine Wunschdatei?

0
Wolly25 
Fragesteller
 29.03.2024, 09:52
@Suboptimierer

Der Fehler ist in Zeile:

Set ws = wb.Worksheets("Auswahlklick")

mit der Meldung: Laufzeitfehler 9, Index außerhalb des gültigen Bereichs.

Ich habe den Pfad reinkopiert und die Tabelle "Auswahlklick" ist ja vorhanden.

Auf den ersten Blick müsste eigendlich alles richtig sein.

Der Codeteil in dem es stockt.

       If passwort = "123" Then ' Ersetze "dein_passwort" durch das gewünschte Passwort

           ' Konstruiere den vollständigen Pfad zur Datei

           pfad_zur_datei = "G:\NEU Reduziert für DEMO.xlsm" ' Passe den Pfad an

           ' Überprüfe, ob das Arbeitsblatt "Auswahlklick" existiert

           On Error Resume Next

           Set wb = Workbooks.Open(pfad_zur_datei)

           On Error GoTo 0

           If Not wb Is Nothing Then

               Set ws = wb.Worksheets("Auswahlklick")

               If Not ws Is Nothing Then

                   ws.Activate ' Arbeitsblatt "Auswahlklick" aktivieren

0
Suboptimierer  29.03.2024, 09:59
@Wolly25

Sieht für mich auch richtig aus.

Versuch es auf einem alternativen Weg. Aktiviere zunächst Worksheets(1) und taste dich dann bis zu deinem Worksheet vor.

Dritte Möglichkeit: Versuch es mit wb.Auswahlklick.

Du kannst dir auch in einer Schleife die Namen der Worksheets ausgeben lassen.

Meiner Erinnerung nach kann das Tabellenobjekt einen anderen Namen haben als die Bezeichnung der Tabelle.

Wenn alles nichts hilft, setzt du im wb ein Makro und debugst das wb-Objekt.

0