Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
356to360
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
356to360
356to360
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Nur sichtbare Tabellenblätter anzeigen

Nur sichtbare Tabellenblätter anzeigen
04.01.2004 03:16:30
Stefan Glander
Hallo Excelanier,
ich verwende folgenden Code:


Option Explicit
Public Sub Blattwechsel()
    Dim intIndex As Integer
    With UserForm1
        intIndex = ActiveSheet.Index - 1
        If intIndex = 0 Then intIndex = Worksheets.Count
        .TextBox1 = Worksheets(intIndex).Name
        intIndex = ActiveSheet.Index + 1
        If intIndex > Worksheets.Count Then intIndex = 1
        .TextBox2 = Worksheets(intIndex).Name
    End With
End Sub

Nun habe ich in einer anderen Datei zusätzlich noch eine Checkbox mit folgendem Code belegt:


Private Sub CheckBox1_Click()
If CheckBox1 Then
   Workbooks("Rechnungen.xls").Sheets(1).Visible = True
Else
    Workbooks("Rechnungen.xls").Sheets(1).Visible = xlVeryHidden
End If
End Sub

     Code eingefügt mit Syntaxhighlighter 2.5


wenn ich nun die UF aufrufe werden dort aber in den Textboxen alle Tabellenblätter angezeigt.
Ich möchte aber nur das die nicht ausgeblendeten Tabellen in den Textboxen erscheinen.
Wer weiß Rat?
Gruss
Stefan Glander

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nur sichtbare Tabellenblätter anzeigen
04.01.2004 10:06:40
Ramses
Hallo

das ist schon klar.
Du musst unterscheiden zwischen "Sichtbar" und "Auflistung".
Wewnn du "Worksheets(intIndex).Name" erhältst du Namen des Sheets mit dem Index. Es wird nicht geprüft ob die Datei sichtbar ist oder nicht.

Einfaches Beispiel in einer leeren Mappe anzuwenden:


Sub demo()
If Worksheets(2).Visible = xlVeryHidden Or Worksheets(2).Visible = xlHidden Then
    MsgBox "Datei vorhanden und wird noch angezeigt"
Else
    MsgBox "Datei ist bereits ausgeblendet"
    Worksheets(2).Visible = True
    MsgBox "Datei wird wieder angezeigt"
End If
Worksheets(2).Visible = xlVeryHidden
MsgBox Worksheets(2).Name & " wurde ausgeblendet und wird nicht mehr angezeigt"
End Sub 
     Code eingefügt mit Syntaxhighlighter 1.16



Für dein Beispiel müsste es nun lauten:


Option Explicit
Public Sub Blattwechsel()
    Dim intIndex As Integer
    With UserForm1
        intIndex = ActiveSheet.Index - 1
        If intIndex = 0 Then intIndex = Worksheets.Count
            If Worksheets(intIndex).Visible = False Then
                .textbox1 = ""
            Else
                .textbox1 = Worksheets(intIndex).Name
            End If
        intIndex = ActiveSheet.Index + 1
        If intIndex > Worksheets.Count Then intIndex = 1
            If Worksheets(intIndex).Visible = False Then
                .textbox2 = ""
            Else
                .textbox2 = Worksheets(intIndex).Name
            End If
    End With
End Sub 
     Code eingefügt mit Syntaxhighlighter 1.16



Gruss Rainer
Anzeige
AW: Nur sichtbare Tabellenblätter anzeigen
04.01.2004 14:08:13
Stefan Glander
Hallo Rainer,
ich weiss nicht ob ich einen Denkfehler mache oder das mal wieder einfach nicht kapiere.
Habe die beiden Dateien mal auf den Server geschoben. Ob DU mal schauen kannst was ich da verböcke?
Gruss
Stefan Glander
https://www.herber.de/bbs/user/2728.zip
AW: Nur sichtbare Tabellenblätter anzeigen
04.01.2004 15:30:36
Ramses
Hallo

ich weiss ja nicht für was das gut sein soll ??? aber so geht es.
Ich habe es ein klein wenig umgeschrieben und in das Initialize Ereignis geschrieben.

https://www.herber.de/bbs/user/2733.zip

Gruss Rainer
Anzeige
AW: Nur sichtbare Tabellenblätter anzeigen
04.01.2004 18:19:50
Stefan Glander
Hallo Rainer,
bist Du sicher das Du die richtigen Datein hochgeladen hast ?
Wenn ich diese beiden Dateien öffne läßt sich das UF nur aufrufen wenn die Tabellenblätter 1 und 3 aktiviert sind.
Gruss
Stefan Glander
AW: Nur sichtbare Tabellenblätter anzeigen
04.01.2004 18:26:21
Ramses
Hallo

da bin ich sicher.
soweit ich das kapiere, blendest du aus DateiB Tabellen in DateiA aus und öffnest da die UF.
Für die UF ist es egal welche Tabellen eingeblendet sind oder nicht. Es werden einfach 2 Textfelder mit Tabellennamen gefüllt

Gruss Rainer
AW: Nur sichtbare Tabellenblätter anzeigen
04.01.2004 18:32:28
Stefan Glander
Hallo Rainer,
ich habe erst Datei B und dann Datei A geöffnet.
Als nächstes setze ich die Haken in den Checkboxen 2,4 und 5.
Dann drücke ich den Button.
Das UF wird dann nicht angezeigt.
Gruss
Stefan
Anzeige
AW: Nur sichtbare Tabellenblätter anzeigen
04.01.2004 19:59:13
Ramses
Hallo

starte mal die UF direkt aus DateiA ob sie sich manuell starten lässt.

Bei mir funktioniert es !?

Gruss Rainer
AW: Nur sichtbare Tabellenblätter anzeigen
04.01.2004 20:41:27
Stefan Glander
Hallo Rainer,.......tiefer seufzer,
ich bin lagsamam durchdrehen.
habe nun in Datei A einen commandbutton eingerichtet und dort dann folgenden Code eingegeben:

Private Sub CommandButton1_Click()
UserForm1.Show
End Sub

Nun bekomme ich einen Laufzeitfehler 2147024809 (80070057)
Das angegeben Objekt konnte nicht gefunden werden.
Was ist da blöß faul?
Gruss
Stefan
Nochmal..
04.01.2004 21:03:57
Ramses
Hallo

Starte die UF mal direkt ohne den Umweg eines Codes.

hier die Dateien einzeln und unkomprimiert

https://www.herber.de/bbs/user/2740.xls

Die Datei https://www.herber.de/bbs/user/2741.xls wurde aus Datenschutzgründen gelöscht


Ansonsten bin ich auch ratlos.

Gruss Rainer
Anzeige
AW:Erstmal Danke
04.01.2004 22:35:25
Stefan Glander
Hallo Rainer,
vielen Dank für Deine Mühe.
Gruss
Stefan

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige