Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1636to1640
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

Name eines Commandbuttons

Name eines Commandbuttons
15.08.2018 14:17:05
Andreas
Moin zusammen,
erstmal danke an alle, die hier Fragen beantworten!
Ich habe eine neue Frage :-) :
Ich benutze oft die Zeile, in der sich ein Commandbutton befindet und zwar mit folgendem Code:
'--------------------------------------------------------
Private Sub CommandButton2_Click()
Dim Knopfnummer As Integer 'Diese Variable spiegelt das "XXX" in "CommandButtonXXX" wider
Knopfnummer = 2 'DAS HIER MUSS MAN BEIM EINFÜGEN IN EIN ANDERES PROGRAMM ANPASSEN!!! Das "XXX" in "CommandButtonXXX" muss stimmen!!!
Dim Knopfzeile As Integer
Knopfzeile = ActiveSheet.Shapes("CommandButton" & Knopfnummer).TopLeftCell.Row
'--------------------------------------------------------
Meine Frage: Kann man die Variable "Knopfnummer" überflüssig machen? Gibt es z.B. eine Methode die den Namen des Commandbuttons ausgibt, der zuletzt gedrückt wurde oder dessen "_Click"-Methode gerade ausgeführt wird?
Danke im Voraus,
Andreas

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Name eines Commandbuttons
15.08.2018 16:07:08
Mullit
Hallo,
kommt darauf an, befindet sich der Button in einer Form oder auf nem TabBlatt?
Gruß, Mullit
AW: Name eines Commandbuttons
15.08.2018 16:46:46
Andreas
Der Button ist eine Befehlsschalftfläche (ActiveX-Steuerelement) auf einem normalen Arbeitsblatt.
AW: Name eines Commandbuttons
15.08.2018 17:05:48
Mullit
Hallo,
dann gehts wohl nur mit Klassenprogrammierung....
Gruß, Mullit
Dann besser mit Formularfeld-Button.
15.08.2018 17:05:57
Daniel
Hi
dann nimm statt dem ActiveX-Button einen Formularfeld-Button.
diesem weist du über das Kontextmenü ein Makro aus einem allgemeinen Modul zu, welches dann bei Klick ausgeführt wird.
in diesem Makro kannst du mit Application.Caller den Namen des aufrufenden Elements ermitteln.
mit ActiveSheet.Shapes(Application.Caller) kannst du dann den Button als Objekt referenzieren.
hat den Vorteil, dass du, wenn du mehrere Buttons mit prinzipell gleichem Code hast, nur ein Makro für alle Buttons benötigst, weil du das Makro aus dem allgemeinen Modul auch mehreren Buttons zuweisen kannst.
Die Differenzierung erfolgt über die Auswertung des Application.Caller
weiterer Vorteil: statt dem Formularfeldbutton kannst du hierfür auch jedes andere Grafikelement verwenden, was dir viel mehr Gestaltungsmöglichkeiten bietet.
Gruß Daniel
Anzeige
AW: Dann besser mit Formularfeld-Button.
15.08.2018 17:32:08
Andreas
Cool, das werde ich bei Zeit mal ausprobieren und berichten, wie es lief.
Danke!

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige