Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA-CommandButton funktioniert nicht richtig

Forumthread: VBA-CommandButton funktioniert nicht richtig

VBA-CommandButton funktioniert nicht richtig
Marko
Hallo zusammen,
ich habe aus meinen früherem Aufgabengebiet noch eine Datei mit einem ganzen Sack voll Makros drin. Die meisten benötige ich jetzt nicht mehr - aber mindestens eines ist dabei, dass ich gern wieder nutzen würde.
Das Makro blendet ein Fenster ein und listet darin alle Tabellenblätter der aktuellen Arbeitsmappe auf. Durch markieren oder de-markieren werden diese dann ein- bzw. ausgeblendet.
Um jetzt meine PERSONL.XLS nicht zu riesig werden zu lassen, wollte ich nur dieses eine Makro aus der alten Datei rauskopieren und da einfügen.
Das Makro sieht erstmal so aus: (kommt original übrigens von einem französischen Rechner mit Excel2003)
Sub Tabellenblätter_ein-/ausblenden()
Dim myfeu() As Boolean
Dim nomfeu As String
Dim nbfeu, cptfeu As Integer
nbfeu = ActiveWorkbook.Sheets().Count
ReDim myfeu(nbfeu)
ReDim clussel(nbfeu, 2)
cptfeu = 1
'-----------------------------dialogue
Load selwin
selwin.Caption = "Hide/Unhide sheets"
selwin.listwin.MultiSelect = fmMultiSelectMulti
For Each c In ActiveWorkbook.Sheets()
selwin.listwin.AddItem c.Name
myfeu(cptfeu - 1) = False
If Not c.Visible Then myfeu(cptfeu - 1) = True
cptfeu = cptfeu + 1
Next c
For cptfeu = 1 To nbfeu
selwin.listwin.Selected(cptfeu - 1) = myfeu(cptfeu - 1)
Next cptfeu
selwin.Show
'-----------------------------traitement
If clussel(0, 0) = "ZZZ" Then GoTo finaffichefeu
Application.ScreenUpdating = False
For cptfeu = 1 To nbfeu
nomfeu = clussel(cptfeu - 1, 0)
ActiveWorkbook.Sheets(nomfeu).Visible = True
If clussel(cptfeu - 1, 1) = 1 Then ActiveWorkbook.Sheets(nomfeu).Visible = False
Next cptfeu
finaffichefeu:    Application.ScreenUpdating = True
End Sub
Unter "Formulare" gibt's dann das "selwin" mit folgendem Code:

Private Sub CommandButton1_Click()
For cptlig = 1 To selwin.listwin.ListCount
clussel(cptlig - 1, 0) = selwin.listwin.List(cptlig - 1)
clussel(cptlig - 1, 1) = 0
If selwin.listwin.Selected(cptlig - 1) Then clussel(cptlig - 1, 1) = 1
Next cptlig
Unload selwin
End Sub
Private Sub CommandButton2_Click()
clussel(0, 0) = "ZZZ"
Unload selwin
End Sub
Private Sub CommandButton3_Click()
a = selwin.listwin.Selected(0)
For cptlig = 1 To selwin.listwin.ListCount
If a Then selwin.listwin.Selected(cptlig - 1) = False _
Else selwin.listwin.Selected(cptlig - 1) = True
Next cptlig
End Sub
Ich steh jetzt vor dem Problem, dass ich zwar das Fenster angezeigt bekomme, dort auch sämtliche Tabellenblätter aufgelistet und an-/abwählbar sind - aber beim Klicken auf "Ok", "All" oder "Cancel" kommt 'ne Fehlermeldung:
"Fehler beim Kompilieren:
Sub oder Function nicht definiert"
Und ich hab keinen Plan warum... Schätze, ich muss noch irgendeinen Part aus der alten Datei rüberkopieren - weiß nur nicht wonach ich suchen soll...
Vielen Dank falls jemand eine Idee hat und mich mit seinem Wissen überhäuft ;-)
Gruß
Marko
Anzeige

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

Betreff
Benutzer
Anzeige
AW: VBA-CommandButton funktioniert nicht richtig
27.05.2011 13:30:15
Rudi
Hallo,
versuchs mal damit: In den Kopf des Moduls:
Public clussel()
Gruß
Rudi
AW: VBA-CommandButton funktioniert nicht richtig
30.05.2011 09:30:51
Marko
Hallo Rudi,
funktioniert leider nicht...
Bekomme damit die Fehlermeldung:
Fehler beim Kompilieren: Ungültiges Attribut in Sub oder Function.
Menno, ich hatte das schonmal auf meinem alten Rechner zum Laufen gebracht...das muss doch irgendwie funktionieren...
Anzeige
AW: VBA-CommandButton funktioniert nicht richtig
30.05.2011 15:42:11
Marko
Ahh, ich nehm' alles zurück...
Hatte es an die falsche Stelle geschrieben - Asche auf mein Haupt ;-)
Ich hab's dann aber doch etwas abgeändert:
Public clussel() As String
Jetzt funzt es einwandfrei :-D Vielen Dank!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige