Ich möchte in einem Tabellenblatt automatisch zu einem Optionsfeld springen, wenn es nicht gefüllt ist.
Hintergrund:
In einem Antragsformular gibt es ganz unten auf der Seite einen Button 'Plausiprüfung'. Wenn nun bestimmte Optionsfelder nicht angeklickt wurden, muss der Anwender das nachholen. Um dem Anwender die Sache zu erleichtern möchte ich nun in den Bereich 'springen'. Es kommt erschwerend hinzu, dass diese Prozedur in einem allg. Modul steht und aus dem Klassenmodul des Tabellenblattes aufgerufen werden soll.
Für Zellen habe ich das schon hinbekommen:
Code im Tabellenblatt:
Private Sub cmdPlausiPruefung_Click()
If IsEmpty(Cells(66, 10)) = True Then
Call PlausiAntrag(66, 10) 'VMNr
Exit Sub
End If
End Sub
Code im allg. Modul:
Sub PlausiAntrag(ByVal AntragZeile As Integer, _
ByVal AntragSpalte As Integer)
Dim msgPlausi As String
msgPlausi = "Es sind nicht alle Pflichfelder gefüllt."
MsgBox msgPlausi, vbInformation, "Plausibilitätsprüfung"
Cells(AntragZeile, AntragSpalte).Activate
ActiveWindow.ScrollRow = ActiveWindow.ActiveCell.Row - 1
End Sub
Soweit bin ich bereits mit den Buttons gekommen:
Code im Tabellenblatt:
Private Sub cmdPlausiPruefung_Click()
If optRisikoJa.Value = False And _
optRisikoNein.Value = False Then
Call PlausiAntragButton("Risikobeschreibung")
End If
End Sub
Code im allg. Modul:
Sub PlausiAntragButton(ByVal msgText As String)
Dim msgPlausi As String
msgPlausi = "Es fehlen noch Angaben zu folgendem Bereich:" _
& vbNewLine & vbNewLine & Space(12) & msgText
MsgBox msgPlausi, vbInformation, "Plausibilitätsprüfung"
End Sub
Geht da was mit SetFocus, wenn ja, wie spreche ich den Optionsbutton 'variabel'an?
Oder kann auch hier gescrollt werden?
Wäre schön, wenn mir jemand helfen könnte.
Ciao
Toni