Hallo,
Bin in die Jahre gekommen und sehr, sehr eingerostet. Wollte mal was Sinnvolles machen und habe mich einfachst in VBA eingearbeitet.
Als Betriebsrat arbeite ich gerade an einer Excel-Datei, die es dem AG ermöglicht, leicht notwendige Informationen an den BR weiterzugeben.
Es handelt sich um zwei Optionsfelder und ein Kontrollfeld, die miteinander verbunden sein sollen.
Optionsfeld 1 heißt unbefristet und Optionsfeld 2 befristet.
Das Kontrollkästen heißt im Ausdruck "Sachgrund" (in der Programmierung heißt das Feld checkbox3, weiß nicht wie der Name geändert werden kann, auch nicht wichtig)
Was geht schon. Ich kann zwischen befristet und unbefristet hin und herschalten. Hurra.
Wenn ich befristet anklicke, dann erscheint in einem Feld der Text "Begründung für die Einstellung und die Befristung"
wenn ich dann noch das Kontrollkästchen anklicke, dann kommt der Text "Begründung für die sachgrundbezogene Befristung:"
Wenn ich dann des weiteren den Befehl ActiveSheet.Shapes("checkbox3").Visible = False rausnehme, klappt das auch ganz gut.
Aber eigentlich wollte ich folgedes.
wenn ich auf das Optionsfeld unbefristet klicke, dann verschwindet das Kontrollkästchen, weil es gibt ja keine unbefristete Einstellung, die auf einem Sachgrund basiert.
wenn aber das Optionsfeld befristet angeklickt wird, dann soll das Kontrollkästchen ja erscheinen.
Und ich weiß eben nicht wie der korrekte Befehl ist. Habe jetzt schon viel probiert. Wie gesagt, verstehe hier meinen Logikfehler nicht.
Was auch nicht klappt. Wenn ich erst sachgrund anklicke und dann befristet, taucht nicht das Datum auf in H40.
Nur wenn ich in einer bestimmten Reihenfolge klicke taucht es auf. Strange.
Eigentlich möchte ich fröhlich vor mich hinklicken können, um folgendes zu erreichen.
Klicke ich unbefristet, dann verschwindet das Kontrollkästchen "Sachgrund" und der Text "Gründe für die Einstellung" in b51. h40 bleibt leer.
Klicke ich befristet und sachgrund dann erscheit der Text "Begründung für die sachgrundbezogene Befristung:"
Klicke ich befristet und nicht Sachgrund (checkbox3), dann erscheint der Text "Begründung für die Einstellung und Befristung"
und in beiden fällen erscheint in h40 das Datum, bis wann die Einstellung geht.
Und das habe ich daraus gemacht. Ging einigermaßen gut, bis ich mit der Unsichbarkeit probierte.
Private Sub unbefristet_Click()
If unbefristet.Value = True Then
Worksheets("Einstellung").Range("H40") = ""
Worksheets("Einstellung").Range("B51") = "Begründung für die Einstellung:"
ActiveSheet.Shapes("checkbox3").Visible = False
ElseIf Befristet.Value = False Then
Worksheets("Einstellung").Range("H40") = ""
End If
End
End Sub
Private Sub CheckBox3_Click()
If CheckBox3.Value = True And Befristet.Value = True Then
Worksheets("Einstellung").Range("B51") = "Begründung für die sachgrundbezogene Befristung:"
Worksheets("Einstellung").Range("H40") = "TT.MM.JJJJ"
ActiveSheet.Shapes("checkbox3").Visible = True
ElseIf CheckBox3.Value = False And Befristet.Value = True Then
Worksheets("Einstellung").Range("B51") = "Begründung für die Einstellung und die Befristung:"
Worksheets("Einstellung").Range("H40") = "TT.MM.JJJJ"
ActiveSheet.Shapes("checkbox3").Visible = True
End If
End
End Sub
Für Hilfe wäre ich dankbar.
Thorsten