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

geklickten CommandButton ermitteln

geklickten CommandButton ermitteln
22.04.2009 09:29:26
Nik
Hallo und Guten Morgen.
Folgendes Problem:
Ich habe eine UserForm mit 40 CommandButtons.
Wenn jetzt der Benutzer auf einen CommandButton klickt, sollte eine PublicVariable cmd einen bestimmten
Wert übernehmen.
Muß ich für jeden CommandButton ein klick-Ereignis schreiben oder ist dies anders lösbar?
(z.B. Me("CommandButton" & a).click...
Nur so als Denkansatz..
Danke im vorraus.
NIK

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: geklickten CommandButton ermitteln
22.04.2009 10:00:06
Peter
Hallo Nik,
das kannst du über ein Klassenmodul lösen.
Lies dich unter www.online.excel.de in das Gebiet ein, da wird dir hervorragend geholfen.
Gruß Peter
AW: geklickten CommandButton ermitteln
22.04.2009 10:06:10
Nik
Dankeschön, werd ich machen ;-)
Noch ne Frage hinterher:
eine public-variable cm wird mit Werten von 1-40 definiert.
Danach wird eine neue Userform2 aufgerufen.
In der Userform2 soll ein Text eingegeben werden. Dieser Text soll dann die caption für den
Command Button in Userform 1 sein.
Bekomm aber den code nicht hin:

Private Sub cmdEnde_Click()
With Userform1
.("cmd") & cm.caption = txtDst
end with
End Sub


Kann mir wer helfen?

Anzeige
AW: geklickten CommandButton ermitteln
22.04.2009 11:07:43
Rainer
So müsste es gehen (ungetestet):

Private Sub cmdEnde_Click()
UserForm1.CommandButton1.Caption = UserForm2.TextBox1.Value
End Sub


Vorraussetzung dafür wäre allerdings das die UserForm1 bei Aufruf der UserForm2 aktiv bleibt also nicht mit Hide oder Unload deaktiviert wird.
Hilft's?
Gruß
Rainer

AW: geklickten CommandButton ermitteln
22.04.2009 11:21:17
Nik
Danke.
Hab etwas rumprobiert und habs so gefunden:
UserForm1("cmd" & cm).caption = txtDst
Geht auch...
Aber mit den Klassenmodulen komm ich nicht klar.
Hab mich eingelesen und rumprobiert und schaffs irgendwie nicht.
Sollte jemand Zeit & Lust haben, vielleicht könnte mir wer auf die Sprünge helfen...*verwirr*
Nik
Anzeige
AW: Korrektur
22.04.2009 10:44:13
Peter
Hallo Nick,
die Internet-Adresse muss www.online-excel.de heißen - mit Bindestrich, nicht mit Punkt zwischen Online und excel.
Gruß Peter
AW: geklickten CommandButton ermitteln
22.04.2009 11:35:51
Rainer
Oops ... Deine Ursprungsfrage komplett übersehen. ^^
Also egal wie Du es machst Du wirst nicht drum herum kommen die Anweisung 40 mal zu schreiben, da ja jeder CommandButton einen anderen Wert darstellt (zumindest habe ich es so verstanden).
Was spricht also dagegen das Klickereignis für jeden Button zu definieren? Vor allem da der Rahmen der Sub ja äußerst bequem automatisch geliefert wird, wenn Du auf den Button einen Doppelklick ausführst. Musst dann nur noch die Anweisung schreiben.
Vor allem fällt mir gerade keine andere Möglichkeit ein den Click auf einen Button anders als über das Click-Ereignis abzufragen.
Ist die Anweisung Du schreiben willst, bzw. die zum Click-Ereignis gehört eine umfangreiche Prozedur kannst Du ja die Prozedur als Function schreiben und beim Click-Ereignis nur den Übergabewert des Buttons an die Function liefern.
Z.B. so:

Private Sub cmd1_Click()
call Ausführung(1)
End Sub



Public Function Ausführung(ByVal Übergabe As Integer)
Select Case Übergabe
Case 1
' Command Button 1 wurde geklickt
Case 2
' Command Button 2 wurde geglickt
End Select
End Function


Kannst auch die Übergabe ByRef machen, dann kann der Inhalt der Variabele Übergabe innerhalb der Function verändert werden.
Gruß
Rainer

Anzeige
AW: geklickten CommandButton ermitteln
22.04.2009 12:09:12
Nik
Super Danke Dir

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige