Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1296to1300
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
Inhaltsverzeichnis

automatische Aktualisierung der Listboxen

automatische Aktualisierung der Listboxen
13.02.2013 11:04:16
Max
Hallo an alle Mitglieder hier im Forum,
ich moechte mich erst einmal bei euch dafuer bedanken, dass Ihr durch eure Beitraege ermoeglicht, dass sich jeder NichtVBAexperte Programmierungen zusammenstellen oder auch nachvollziehen kann.
Fuer meine Ansprueche hat bisher die Suchfunktion immer einen Treffer geliefert – Dafuer vielen Dank!
Dieses mal habe ich erneut versucht eine Programmierung auf meine Beduerfnisse abzuaendern, bin jedoch gescheitert. Ich denke, dass es eigentlich nicht kompliziert ist. Ich als VBAunfaehiger Mensch bin jedoch ueberfordert. Daher die Bitte um eure Mithilfe.
Die Programmierung selbst funktioniert, jedoch bekomme ich es nicht hin, dass die Sheets am Ende auch in der richtigen ListBox angezeigt werden. (Der letzte Abschnitt). Dabei soll folgendes passieren:
Ist das Blatt:
Versteckt – soll es in der Box lbHidden angezeigt werden
Unsichtbar – soll es in der Box lbvhidden angezeigt werden
Sichtbar – soll es in der Box lbNon angezeigt werden
Ich habe schon mehrere Versuche gestartet, jedoch werden mir die Blaetter in unterschiedlichen Boxen angezeigt oder aber etwas anderes laeuft schief.
Anbei der Code in der Hoffnung, dass mir jemand helfen kann.
Private Sub btnHide_Click()
For i = 0 To lbNon.ListCount - 1
If lbNon.Selected(i) = True Then
For j = 1 To Sheets.Count
If Sheets(j).Name = lbNon.List(i) Then
arrSheets(j) = False
Sheets(j).Visible = False
End If
Next j
End If
Next i
UpdateForm
End Sub
Private Sub btnUnhide_Click()
For i = 0 To lbHidden.ListCount - 1
If lbHidden.Selected(i) = True Then
For j = 1 To Sheets.Count
If Sheets(j).Name = lbHidden.List(i) Then
arrSheets(j) = True
Sheets(j).Visible = True
End If
Next j
End If
Next i
UpdateForm
End Sub
Private Sub btnvhide_Click()
For i = 0 To lbNon.ListCount - 1
If lbNon.Selected(i) = True Then
For j = 1 To Sheets.Count
If Sheets(j).Name = lbNon.List(i) Then
arrSheets(j) = False
Sheets(j).Visible = xlSheetVeryHidden
End If
Next j
End If
Next i
UpdateForm
End Sub
Private Sub btnvunheid_Click()
For i = 0 To lbvhidden.ListCount - 1
If lbvhidden.Selected(i) = True Then
For j = 1 To Sheets.Count
If Sheets(j).Name = lbvhidden.List(i) Then
arrSheets(j) = True
Sheets(j).Visible = True
End If
Next j
End If
Next i
UpdateForm
End Sub
Private Sub btnClose_Click()
Me.Hide
End Sub

Sub UpdateForm()
lbNon.Clear
lbHidden.Clear
lbvhidden.Clear
For i = 1 To Sheets.Count
arrSheets(i) = Sheets(i).Visible
If arrSheets(i) And arrSheets(i) xlSheetsVeryHidden Then
frmSelect.lbNon.AddItem Sheets(i).Name
ElseIf arrSheets(i) And arrSheets(i) = xlSheetsVeryHidden Then
frmSelect.lbvhidden.AddItem Sheets(i).Name
Else
frmSelect.lbHidden.AddItem Sheets(i).Name
End If
Next i
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: automatische Aktualisierung der Listboxen
13.02.2013 11:49:58
Hajo_Zi
If Sheets(j).Visible = xlSheetVeryHidden then
lbHidden.additem Sheets(j).name
End if

AW: automatische Aktualisierung der Listboxen
13.02.2013 12:00:43
Max
Hallo und Vielen Dank schon einmal. Es funktioniert insofern, dass das unsichtbare Sheet jetzt auch in der richtigen Box angezeigt wird. Jedoch wird es im unsichtbaren Zustand auch in der Box Sichtbar angezeigt - also 2 mal angezeigt.

AW: automatische Aktualisierung der Listboxen
13.02.2013 12:03:18
Hajo_Zi
für das füllen der anderen Listbox habe ich nichts vorgeschlagen, da musst Du den Fragen der Dir das vorgeschlagen hat.
Gruß Hajo
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige