HERBERS Excel-Forum - die Dialoge

Thema: Optionsfelder in Frames 1

Home
Die Werte von Optionsfeldern in Frames werden ausgelesen und in einer Tabelle eingetragen. Optionsfelder in Frames 1
  • Prozedur: UserForm_Initialize
  • Art: Ereignis
  • Modul: Klassenmodul der UserForm
  • Zweck: Neue Arbeitsmappe erstellen
  • Ablaufbeschreibung:
    • Neue Arbeitsmappe erstellen
    • Kopfzeilen beschriften und formatieren
  • Code:

    
    Private Sub UserForm_Initialize()
       Workbooks.Add 1
       Range("A1").Value = "Gruppe 1"
       Range("D1").Value = "Gruppe 2"
       Range("G1").Value = "Gruppe 3"
       Range("A1:C1").HorizontalAlignment = xlHAlignCenterAcrossSelection
       Range("D1:F1").HorizontalAlignment = xlHAlignCenterAcrossSelection
       Range("G1:I1").HorizontalAlignment = xlHAlignCenterAcrossSelection
       Rows(1).Font.Bold = True
    End Sub
    
  • Prozedur: cmdOK_Click
  • Art: Ereignis
  • Modul: Klassenmodul der UserForm
  • Zweck: Optionsfeldgruppen auslesen und eintragen
  • Ablaufbeschreibung:
    • Variablendeklaration
    • Index der ersten freien Zeile in Integer-Variable einlesen
    • Schleife über 3 Frames bilden
    • Schleife über 3 Optionsfelder je Frame bilden
    • Optionsfeldwerte auslesen und eintragen
  • Code:

    
    Private Sub cmdOK_Click()
       Dim iFrm As Integer, iOpt As Integer, iRow As Integer
       iRow = Cells(Rows.Count, 1).End(xlUp).Row + 1
       For iFrm = 1 To 3
          For iOpt = 1 To 3
             Cells(iRow, (iFrm - 1) * 3 + iOpt).Value = _
                Controls("Frame" & iFrm) _
                .Controls("OptionButton" & _
                (iFrm - 1) * 3 + iOpt).Value
             Controls("Frame" & iFrm) _
                .Controls("OptionButton" & _
                (iFrm - 1) * 3 + iOpt).Value = False
          Next iOpt
       Next iFrm
    End Sub