Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Ereignisprozedur per VBA ändern

Begonnen von cyberchris, Mai 25, 2011, 12:44:43

⏪ vorheriges - nächstes ⏩

cyberchris

Hallo,

ich habe in einem Formular beim Anzeigen eine Ereignisprozedur dahinter. Nun möchte ich über eine Checkbox steuern, ob dieses Ereignis ausgeführt wird oder nicht.
Mit dem Befehl:
Forms("FormularXY").OnDeactivate = "[Ereignisprozedur]"
Forms("FormularXY").OnDeactivate = ""

Mit diesen Befehlen kann ich das Ereignis aber nicht aktivieren/deaktivieren.


Danke
gruß cyberchris

MzKlMu

Hallo,
am einfachsten geht das, wenn in der Prozedur selbst die Checkbox ausgewertet wird:

If Me!Checkbox = True Then Exit Sub 'oder =False
Gruß Klaus

cyberchris

Hallo,

ja, das habe ich derzeit auch. Nur ist diese Funfktion (siehe unten) nervig, da immer die Seite neu aufgebaut wird und es dadurch zu einem Art Flimmern kommt, wenn ich im Formular klicke. Deshalb möchte ich mit einer Checkbox das Ergeignis an- und abschalten.

PS: Mit dem Ereignis habe ich es hinbekommen die aktive Zeile im Endlosformular zu markieren (über bedingte Formatierung).

gruß cyberchris

DF6GL

Hallo,

irgendwas versteh ich da wieder mal nicht..


Wenn der Code nicht "beim Anzeigen" immer ausgeführt werden soll, dann steht der wohl in  der falschen Ereignisprozedur
Genausogut könnte der eigentliche Code  nur dann ausgeführt werden, wenn das KK, bzw. eine Schaltfläche   angeklickt wird...


Oder sehe ich das falsch?

cyberchris

Ein Kollege wollte, dass die aktive Zeile farbig markiert wird. Das habe ich mit bedingter Formatierung gelöst:

In Kurzform:
Form_Current: Me!DeineIDAktiv = Me!IDoWAG
Formularkopfbereich ein Feld: DeineIDAktiv
Bedingten Formatierung im Detailbereich: [IDoWAG]=[DeineIDAktiv]

Nur möchte ich dies ausschalten können, da das nervig ist wg. dem "flimmern".
Wenn ich im Form_Current die Checkbox abfrage, flimmert es trotzdem, deshalb möchte ich die ganze Ereignisprozedure deaktivieren.

Ich hoffe, dass ich es verständlich geschrieben habe.

Gruß cyberchris

cyberchris

Kann man die Ereignisprozedure so nicht deakitivieren?

bahasu

Zitat von: cyberchris am Mai 25, 2011, 12:44:43
in einem Formular beim Anzeigen eine Ereignisprozedur dahinter.

Hi,
was passiert mit:
Me.OnCurrent= ""     ' deaktivieren
bzw.
Me.OnCurrent="[Event procedure]"    ' aktivieren

Harald
Servus

database

Hallo,

ZitatWenn ich im Form_Current die Checkbox abfrage, flimmert es trotzdem

Probier mal nach MzKlMu's Vorschlag...:

If Me!Checkbox = True Then     'Exit Sub oder =False
   Me!Painting = False
   ...
   Me!DeineIDAktiv = Me!IDoWAG    
   ...
   ...
   Me!Painting = True
Else
   ...
   ...
End If



cyberchris

Muss ich die Tage mal ausprobieren.

Vielen Dank.

cyberchris

...
Me.OnCurrent= ""     ' deaktivieren
bzw.
Me.OnCurrent="[Event procedure]"    ' aktivieren
...

Funktioniert einwandfrei und wie gewünscht!

Vielen Dank!!!
cyberchris

cyberchris

Hallo,

jetzt benötige ich diese Möglichkeit auf für Textfeld und dem Ereignis Nach Aktualisierung.
Wie kann ich dieses Ereginis ansprechen?

Danke
gruß Christoph

bahasu

N'abend Chris,

Me.DeinFeld.AfterUpdate = "" zum Deaktivieren

Harald
Servus