Ich verwende ein Formular in MS Access 2010, um Daten in eine Tabelle einzugeben. Ich habe die grundlegenden Funktionen eingerichtet und habe etwas VB-Code hinzugefügt, um es wie gewünscht zu formatieren. Eines der Dinge, die ich versuche, ist die Aktualisierung der Beschriftung eines Tickbox-Werts, wenn dieses Kontrollkästchen aktiviert ist. Mit dem unten stehenden Code funktioniert es jedoch, wenn ich auf "Datensatz hinzufügen" klicke, anstatt die Daten zu löschen Elemente - Ich kann nicht herausfinden, wie ich das ändern kann, damit es funktioniert. Ich bin mir sicher, dass ich eine Schleife hinzufügen oder den Datensatz hinzufügen-Button ändern muss, aber ich habe keine Ahnung, wo ich anfangen soll (es gibt 30+ Labels und Tickboxes wenn es einen schnellen Weg gibt, ohne auf alle Etiketten zu verweisen, die bevorzugt werden würden. Mein zweites Problem ist, weil ich "AfterUpdate" verwendet habe, wenn ich das Formular verwende, um die bereits hinzugefügten Datensätze zu durchsuchen, ändert sich die Formatierung nicht mit den Werten, da kein Kontrollkästchen angeklickt wurde.MS Access - Formatieren von Labels
Private Sub TextBox1Name_AfterUpdate()
Const LightYellow = 10092543
If TextBox1Name = -1 Then
Me.Label1Name.BackStyle = 1
Me.Label1Name.BackColor = LightYellow
Else
Me.Label1Name.BackStyle = 0
End If
End Sub
Jede Hilfe oder Richtung würde sehr geschätzt werden mit diesem.
Verwenden Sie ein Endlosformular? Sie können viel tun, indem Sie den Kontrolltyp überprüfen. Bedenke, du hast bereits ein Wahres und Falsches, also brauchst du es nicht, wenn und sonst. – Fionnuala
Ihre zweite Frage ist einfach - fügen Sie einfach ein 'Form_Current'-Ereignis hinzu, um das Etikett nach Bedarf festzulegen/zurückzusetzen. Wie 'Reset 30+ Etiketten ...' nach dem Klicken auf die Schaltfläche "Hinzufügen", können Sie entweder durch alle Me.Controls auf der Suche nach Checkbox Typ und Reset, oder manuell mehr als 20 Zeilen Code zurücksetzen (Boo!) Dies ist ein guter Ort, um den Wert von aussagekräftigen Kontrollnamen (dh chkLarge, chkSmall usw.) zu erkennen, da Sie mit Code sowohl nach Namen als auch nach Kontrolltypen suchen können. –