Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1476to1480
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 Identifizierung der Controls?

automatische Identifizierung der Controls?
23.02.2016 11:09:42
Vincent
Hallo Zusammen,
in diesem Beitrag möchte ich mich erkundigen ob es eine Lösung gibt, die über VBA erledigt werden kann:
Ich habe mehrere Buttons in einer bestimmten Multipage, und die Namen jedes Buttons sind sequenziell(z.B."CommandButton" & Index). Gibt es ein Makro dass ein Button automatisch identifiziert und bestimmte Aktion ausgeführt werden kann nachdem ich einen beliebigen Button angeklickt habe und ohne dass ich für jeden Button einen Click Event anlegen muss?
Falls meine Frage noch nicht vorstellbar wäre, ist im Folgenden ein konkretes Szenario.
In Multipage0 gibt es CommandButton1, CommandButton2, CommandButton3.
Wenn ich CommandButton2 anlicke, sollte ein * in der Zelle B2 eines Arbeitsblattes angezeigt werden.
Wenn ich CommandButton3 anlicke, sollte ein * in der Zelle B3 eines Arbeitsblattes angezeigt werden.
Usw.
MFG
Vin.

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: automatische Identifizierung der Controls?
23.02.2016 11:25:15
Rudi
Hallo,
du kannst für die Buttons eine eigene Klasse schreiben, so dass alle Buttons auf ein Click_Event laufen.
Gruß
Rudi

AW: automatische Identifizierung der Controls?
23.02.2016 11:38:33
Vincent
Hallo Rudi,
danke für deinen Hinweis.
Könntest du mir die Codes anbieten damit ich versuchen kann deine Codes nachvollzuziehen? Denn ich habe noch keine Erfahrungen in dem Klasse Bereich.
MFG
Vin.

AW: automatische Identifizierung der Controls?
23.02.2016 12:04:20
Rudi
Hallo,
Userform:
Dim objCmd(1 To 6) As New clsCMD  '6 Commandbuttons
Private Sub UserForm_Initialize()
Dim objControl As Control, i As Integer
Dim objPage As Object
For Each objPage In MultiPage1.Pages
For Each objControl In objPage.Controls
If TypeName(objControl) = "CommandButton" Then
i = i + 1
Set objCmd(i).myCmd = objControl
With objCmd(i).myCmd
.Caption = i
End With
End If
Next
Next
End Sub
Klassenmodul clsCMD:
Option Explicit
Public WithEvents myCmd As MSForms.CommandButton
Private Sub mycmd_Click()
MsgBox myCmd.Name
End Sub
Gruß
Rudi

Anzeige
AW: automatische Identifizierung der Controls?
23.02.2016 18:37:22
Vincent
Hallo Rudi,
vielen Dank. Ein sehr konkretes Beispiel!
MFG
Vin.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige