HERBERS Excel-Forum - die Dialoge

Thema: Optionsfelder in Frames 2

Home
Wenn in einer UserForm im ersten Gruppenfeld das 2. und im 2. das 3. Optionsfeld aktiviert sind, soll eine neue Arbeitsmappe geöffnet werden. Optionsfelder in Frames 2
  • Prozedur: cmdOK_Click
  • Art: Ereignis
  • Modul: Klassenmodul der UserForm
  • Zweck: Neue Arbeitsmappe erstellen, wenn Bedingungen erfüllt sind
  • Ablaufbeschreibung:
    • Variablendeklaration
    • Funktion zum Auslesen der OptionButton-Werte für den ersten Frame aufrufen
    • Funktion zum Auslesen der OptionButton-Werte für den zweiten Frame aufrufen
    • Wenn im ersten Frame der erste und im zweiten der dritte OptionButton aktiviert sind...
    • Neue Arbeitsmappe anlegen
    • Sonst...
    • Warnton
    • Negativmeldung
  • Code:

    
    Private Sub cmdOK_Click()
       Dim iA As Integer, iB As Integer
       iA = opt(Frame1, 0)
       iB = opt(Frame2, 4)
       If iA = 2 And iB = 3 Then
          Workbooks.Add 1
       Else
          Beep
          MsgBox "Nein, ich tue nur was, wenn die " & _
             "Optionsfelder 2 und 3 aktiviert sind!"
       End If
    End Sub
    
  • Prozedur: cmdOK_Click
  • Art: Funktion
  • Modul: Klassenmodul der UserForm
  • Zweck: Optionsfeldgruppen auslesen
  • Ablaufbeschreibung:
    • Variablendeklaration
    • Eine Schleife über alle Optionsfelder des jeweiligen Frames bilden
    • Wenn das jeweilige Optionsfeld aktiviert ist...
    • Optionsfeld-Index als Funktionsvert festlegen
    • Funktion verlassen
  • Code:

    
    Private Function opt(fme As Frame, iAct As Integer) As Integer
       Dim iCounter As Integer
       For iCounter = 1 + iAct To 4 + iAct
          If fme.Controls("OptionButton" & iCounter).Value = True Then
             opt = iCounter - iAct
             Exit Function
          End If
       Next iCounter
    End Function