Clever-Excel-Forum

Normale Version: Application.EnableEvents erzwingen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,
 
ich möchte durch das Worksheet_Change Ereignis verschiedene Programme anstoßen. Jedoch funktioniert dies erst wenn ich im Direktfenster "Application.EnableEvents = True" eingebe.

Ich habe bereits versucht, durch das Worksheet_Open "Application.EnableEvents = True" auszulösen, jedoch funktioniert das nicht. Hat jemand eine Idee, wie ich es ohne Direktfenster umsetzen kann?

Danke im Voraus :)

Code:
Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("T3:Z3000")) Is Nothing Then

   Target.Interior.ColorIndex = 6

   platzhalter
   LBProzentBerechnen

End If

If Not Intersect(Target, Range("P3:P3000")) Is Nothing Then

   Target.Interior.ColorIndex = 6

   EGGehalt
   LBBerechnen

End If

End Sub
Moin!
Nun, dann werden irgendwo in Deinen Makros die Events ausgechaltet und durch einen Fehler(?) nicht wieder eingeschaltet!
Ohne Kenntnis derer nur der Tipp:
Events IMMER iVm einer vernünftigen Fehlerbehandlung anpacken!

Gruß Ralf
Hallo Ralf,
okay danke schonmal für den Hinweis.

Sprich durch die untenstehende Fehlerbehandlung in meinen Subs müsste es funktionieren? Da ich viele Subs habe, würden die den Rahmen sprengen beim hochladen.

Code:
On Error Goto Fehler

Fehler:
Application.EnableEvents = True
Versuch macht kluch Wink
Ja, so meinte ich das.

Gruß Ralf
Ja du hast recht :D

Okay, danke dir, werde ich mal versuchen
Einmal selbst die Code 'drehen' reicht.

Code:
Sub M_snb()
   application.enableevents=true
end sub

Ein 'petitio principii' wäre

Code:
Private Sub Workbook_open()
   application.enableevents=true
End Sub