Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
844to848
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
844to848
844to848
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Unterschied schaltfläche und commandbutton

Unterschied schaltfläche und commandbutton
samsplanet
salut zusammen
warum funktioniert folgendes als makro zugewiesen zu einer schalfläche einwandfrei, nicht aber als code einer befehlsschaltfläche (commandbutton)? bleibt bei Columns("L:L").Select hängen.
Sheets("HT_FuTa").Select
ActiveSheet.Unprotect Password:="xxx"
Columns("L:L").Select
Selection.autofilter
Selection.autofilter Field:=1, Criteria1:=""
ActiveWindow.SelectedSheets.PrintPreview
ActiveSheet.Protect Password:="xxx"
Sheets("HT_FuTa").Visible = False
ratschläge? danke und gruss
samsplanet

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Unterschied schaltfläche und commandbutton
06.02.2007 22:49:03
daniel
Hallo
weil der Commandbutton und seine Makros explizit zu einem Sheet gehören. (der code steht ja auch im Modul des jeweiligen Sheets)
Deswegen muß jede referenzierung auf ein anderes Sheet immer mit angegeben werden, auch wenn das Sheet gerade aktiv ist, Range-Angaben ohne Sheet-Objekt können sich nur auf eigene Sheet beziehen.
Der Code einer Schaltfläche steht normalerweise im allgemeinen Modul, damit bezieht sich eine Range-Angabe ohne Sheet-Objekt immer auf das Aktive Sheet.
Sheets("HT_FuTa").columns("L:L").select
müsste daher mit einem commandbutton funktionieren.
Besser wärs allerdings, du lässt die ganze selektiererei ganz weg (ist sowieso überflüssig und bremst nur den Code)
und addressierts immer direkt, also
Sheets("HT_FuTa").Unprotect Password:="xxx"
Sheets("HT_FuTa").Columns("L:L").autofilter Field:=1, Criteria1:="<>"
Sheets("HT_FuTa").PrintPreview
Sheets("HT_FuTa").Protect Password:="xxx"
Sheets("HT_FuTa").Visible = False

oder noch besser
with Sheets("HT_FuTa")
.Unprotect Password:="xxx"
.Columns("L:L").autofilter Field:=1, Criteria1:="<>"
.PrintPreview
.Protect Password:="xxx"
.Visible = False
end with

was in der With-Klammer definiert ist, kann im Folgenden durch einen Punkt . ersetzt werden.
Gruß, Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige