Microsoft Excel

Herbers Excel/VBA-Archiv

Probleme beim schließen einer Arbeitsmappe

Betrifft: Probleme beim schließen einer Arbeitsmappe von: Michael
Geschrieben am: 08.09.2004 14:50:52

Hallo,

ich hab folgendes Problem:

Eine Zelle blinkt rot, wenn der Wert größer als drei wird.

Wenn ich nun die Mappe schließe, dann erscheint das Popup "diese Mappe enthält Macros usw. aktivieren deaktivieren usw."

Egal auf was ich klicke, die Mappe die ich eigendlich schließen will, öffnet sich automatisch wieder.
Macro nachfolgend

Wer kann mir helfen?
Danke
Michael



Sub Color()
If Cells(1, 3) < 5 Then
    test = Now + TimeValue("00:00:01")
    If Cells(1, 4).Interior.ColorIndex = 3 Then
        Cells(1, 4).Interior.ColorIndex = xlNone
        Else
            Cells(1, 4).Interior.ColorIndex = 3
        End If
    Application.OnTime test, "Color"
    Else
        Cells(1, 4).Interior.ColorIndex = xlNone
        Exit Sub
    End If
End Sub

  


Betrifft: AW: Probleme beim schließen einer Arbeitsmappe von: HerbertH
Geschrieben am: 08.09.2004 16:26:27

hallo Michael,
probier das:

in "Diese Arbeitsmappe":


Private Sub Workbook_BeforeClose(Cancel As Boolean)
    On Error Resume Next
    Application.OnTime EarliestTime:=ET, Procedure:="test", Schedule:=False
End Sub


     gruß Herbert


  


Betrifft: AW: Probleme beim schließen einer Arbeitsmappe von: michael
Geschrieben am: 09.09.2004 12:12:03

Hallo Herbert,

das Problem besteht leider weiterhin.
Nur wenn ich das Excelprogramm schließe ist alles ok.
Wenn ich jedoch nur die Mappe schließen will, kommt nach dem Speichern die besagte Meldung und das Ding offnet wieder
Gruß
Michael


  


Betrifft: AW: Probleme beim schließen einer Arbeitsmappe von: HerbertH
Geschrieben am: 09.09.2004 14:46:45

so gehts:



Option Explicit
Public test As Variant

Sub Color()
If Cells(1, 3) < 5 Then
    test = Now + TimeValue("00:00:01")
    If Cells(1, 4).Interior.ColorIndex = 3 Then
        Cells(1, 4).Interior.ColorIndex = xlNone
        Else
            Cells(1, 4).Interior.ColorIndex = 3
        End If
    Application.OnTime test, "Color"
    Else
        Cells(1, 4).Interior.ColorIndex = xlNone
        Exit Sub
    End If
End Sub



Sub stop_()
   On Error Resume Next
    Application.OnTime EarliestTime:=test, Procedure:="Color", Schedule:=False
  test = ""
End Sub



'in "Diese Arbeitsmappe"
 Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
   On Error Resume Next
Call stop_
End Sub


     gruß Herbert


  


Betrifft: AW: Probleme beim schließen einer Arbeitsmappe von: michael
Geschrieben am: 10.09.2004 10:10:08

Hallo Herbert,
das schließen geht nun ok.
Aber das Blinken geht nur, wenn das Macro (Color) manuell gestartet wird.
Nicht wie geplant beim öffnen der Datei.
Wenn dann die Bedingungen für das Blinken nicht mehr erfüllt sind, hört es auch auf zu blinken.
Jedoch wenn die Bedingungen eintreffen für das Blinken, blinkts nicht mehr.
Da muß ich dann das Macro wieder manuell starten.
Gibts da eine Lösung, das ich das Macro nicht immer manuell starten muß?

Vielen Dank für Deine bisherige Hilfe
Gruß
Michael


  


Betrifft: AW: Probleme beim schließen einer Arbeitsmappe von: HerbertH
Geschrieben am: 10.09.2004 14:55:10

du hast eigentlich nur gesagt, daß das Makro nicht beendet wird,
sprich die Mappe hat sich wieder geöffnet...
mußt halt das Makro mit Workbook_Open starten:

Private Sub Workbook_Open()
Call color
End Sub


gruß Herbert


  


Betrifft: AW: Probleme beim schließen einer Arbeitsmappe von: Michael
Geschrieben am: 13.09.2004 16:34:29

Hallo Herbert,

das Blinken klappt jetzt, die Mappe läßt sich nun auch schließen.

Wenn die Bedingungen für das Blinken nicht mehr erfüllt sind, hört es auch auf.
Nur wenn dann die Bedingungen wieder eintreffen blinkt es nur, wenn ich das Macro neu starte.
Gibt es da eine Möglichkeit, daß ich hierzu nicht immer das Macro starten muß?

Gruß
Michael


 

Beiträge aus den Excel-Beispielen zum Thema "Probleme beim schließen einer Arbeitsmappe"