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

VBA Formular - Zugriff auf Optionsfelder in Gruppe

VBA Formular - Zugriff auf Optionsfelder in Gruppe
10.12.2013 10:59:20
Doof
Hallo,
programmiere gerade Formulare in VBA für Access (nehme mal an dass die Formularprogrammierung dabei keinen grossen Unterschied macht zu Excel).
Ich habe eine Optionsgruppe und da drin 4 Optionsfelder. Ich möchte
1.)
Die Namen der Optionsfelder durch direkten Zugriff herausfinden, ohne dass ich im Code Wissen über den Namen oder andere spezielle Eigenschaften des Optionsfeldes haben muss.
Ich stelle mir das irgendwie so vor:

For i=0 To .Controls.Count -1
Debug.Print ( .Controls.Items(i).Caption )
Next

So stelle ich mir das vor. Aber es geht nicht. Kann jemand helfen?
2.)
Auf ähnliche Weise wie 1.) den Namen des aktiven Optionsfeldes herausfinden. Wie geht das?
Grüße,
doofnuss

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Formular - Zugriff auf Optionsfelder in Gruppe
11.12.2013 14:05:27
fcs
Hallo doofnuss,
etwa so sollte es funktionieren. Zumindest in einem Excel-UF tut's.
Sinnvoller Weise plazierst du die Optionsschaltflächen in einem Frame-Element, dann musst du nur die Elemente des Frames prüfen.
Gruß
Franz
Private Sub CommandButton1_Click()
Dim objControl As Control
Dim strOption As String
With Me.Frame1
'    With Me
For i = 0 To .Controls.Count - 1
Set objControl = .Controls(i)
If VBA.TypeName(objControl) = "OptionButton" Then
strOption = objControl.Caption
MsgBox "i = " & i & vbLf & "Name = " & .Controls(i).Name _
& vbLf & "Caption = " & strOption, vbOKOnly, _
"Info zu Options-Schaltflächen"
End If
Next
End With
With Me.Frame1
'    With Me
strOption = ""
For i = 0 To .Controls.Count - 1
Set objControl = .Controls(i)
If VBA.TypeName(objControl) = "OptionButton" Then
If objControl.Object.Value = True Then
strOption = objControl.Caption
MsgBox "gewählte Option: " & strOption, vbOKOnly, "Gewählte Option"
Exit For
End If
End If
Next
If strOption = "" Then
MsgBox "es wurde keine der Optionen gewählt!"
End If
End With
End Sub

Anzeige

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige