Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CheckBox
BildScreenshot zu CheckBox CheckBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Label
BildScreenshot zu Label Label-Seite mit Beispielarbeitsmappe aufrufen

Controls auf UserForm aus Standardmodul abfragen | Herbers Excel-Forum


Betrifft: Controls auf UserForm aus Standardmodul abfragen von: Jürgen
Geschrieben am: 23.10.2008 11:28:55

Hallo,

in einer Anwendung habe ich eine UserForm mit 2 CheckBoxen.

Im Standardmodul möchte ich nun prüfen, welche der beiden Checkboxen aktiviert sind.

Habe dabei das Problem, die Checkboxen anzusprechen.
Die UserForm wurde im Modul vom Typ "Object" definiert.
In der Zeile "If frm.Controls ... " bekomme ich den Hinweis: "Objekt unterstützt diese Eigenschaft oder Methode nicht".

Deklariere ich die Variable frm als Form, kriege ich bei der Anweisung "Set frm ..." den Fehlerhinweis, dass die Typen unverträglich sind.

Kann mir jemand mit einem Tipp weiterhelfen?

Hier ein Schnipsel (der Name der UserForm wird an das Standardmodul übergeben = strForm):

Sub Meine Prozedur(strForm as String)
Dim frm as Object

Set frm = ThisWorkbook.VBProject.VBComponents(strForm)

If frm.Controls("CheckBox1").Value = 1 then
MsgBox "CheckBox 1 ist aktiviert."
End If

Wäre für jeden Hinweis dankbar.

Gruß
Jürgen

  

Betrifft: AW: Controls auf UserForm aus Standardmodul abfragen von: Ramses
Geschrieben am: 23.10.2008 11:45:36

Hallo

Machs nicht so umständlich

So wird das Makro aus der UF aufgerufen

Option Explicit

Private Sub CommandButton1_Click()
    Test Me
End Sub


und so lautet das Makro

Sub Test(ufName As UserForm)
    If ufName.Controls("Checkbox1") Then
        MsgBox "1 ist OK"
    End If
End Sub


Gruss Rainer


  

Betrifft: AW: Controls auf UserForm aus Standardmodul abfragen von: Jürgen
Geschrieben am: 23.10.2008 14:02:58

Hallo Rainer,

Machs nicht so umständlich


Wollte ich eigentlich auch nicht, aber mangels besseren Wissens ..... naja

Gut, dass es hier Experten gibt, die man fragen kann!

Habe Deinen Tipp umgesetzt - funktioniert perfekt.

Danke!

Gruß
Jürgen


Beiträge aus den Excel-Beispielen zum Thema "Controls auf UserForm aus Standardmodul abfragen"