Frage

Herstellung eine Access-Datenbank (2003), das vor allem von anderen Programmierern und Tech-Management als Instrument für die Datenvalidierung verwendet wird. Ich mag eine Schaltfläche auf Teile der Form zu bringen, den Code ausgeführt wird, um den Code zu zeigen, die ausgeführt werden. So können die Programmierer es an Ort und Stelle bearbeiten. Dies ist für ein Datenvalidierungsprojekt mit häufigem Wechsel des Codes. Nehmen wir an, der Code in einem Modul ist so das Formular gespeichert werden nicht benötigt oder im Bearbeitungsmodus. Drücken Sie einfach auf den Button und das erscheint den Code in der Codeansicht.

War es hilfreich?

Lösung

Sie können nur Code in Module begrenzt werden. Aber in einer Schaltfläche auf dem Formular, könnten Sie das Click-Ereignis auf:

DoCmd.OpenModule "module_name", "the_name_of_some_function"

Andere Tipps

Wäre es für Sie arbeiten?

Private Sub Command0_Click()
While True
Debug.Print "tt"
If pressed And debugmode Then
   Stop
   pressed = False
End If
DoEvents

Wend
End Sub

Private Sub Command1_Click()
    pressed = True
    ' You can just put here Stop 
End Sub

Edit: Ich meine verwenden DoEvents und Stopp

Sie den Code Anzeigen ist nicht so hart, und wirklich weder sie bearbeitet. Aber ich sollte Sie warnen einige Gefahren aus. Zunächst wird der Ansatz, den Sie beträgt Selbstmodifizierender Code diskutieren, die eine Menge von Antivirus-Software auslöst. Zweitens ist die Korruption eine ständige Gefahr mit Zugang und Selbstmodifizierender Code dieses Problem nur verschlimmert. Jede Lösung, die Sie kommen mit sollten Änderungen minimieren und Sie sollten auch eine sehr robuste Sicherung und Wiederherstellung Plan. Drittens Code selbst modifizierenden werden Sie von der Zusammenstellung der Datenbank verhindern (mit mdes) oder das Projekt zu verriegeln. Dies kann zu einigen sehr hart führen zu steuern und den Quellcode zu erhalten.
Ich würde stattdessen vorschlagen, dass Sie reine SQL prüfen, mit Ihrer Datenänderung zu tun. Sie können dann speichern und die SQL in einer Tabelle ändern und dann nur CurrentDB.Execute verwenden, um sie auszuführen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top