Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Makro abstellen während anderes läuft

Makro abstellen während anderes läuft
22.10.2004 15:15:18
Michal
Ich habe ein Makro geschrieben, welches aktiv wird, wenn die Zelle gewechselt wird.
Das stört dann aber beim Durchlauf eines anderen Makros. Nun, kann ich das irgendwie verhindern?
Gruss Michal
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro abstellen während anderes läuft
ransi
hallo michal
ich kenne zwar deine beiden makros nicht, aber glaube das du Worksheet_Change benutzt um ein anderes makro aufzurufen.
schau dir mal EnableEvents an.
damit kannst du die ereigniss prozeduren ein- und ausschalten.
ransi
AW: Makro abstellen während anderes läuft
25.10.2004 10:04:49
Michal
Mit EnableEvents schnall ich das ncht so ganz....
Dieses Makro hier versteckt alle Zeilen, die nicht markiert sind, bzw. "¢" drinsteht.
--------------------------
Sub hide()
Dim leerzeilen As Integer
Dim zeile As Integer
leerzeilen = 0
Range("A1").Activate
Do Until leerzeilen > 10
If ActiveCell.Value = "¢" Then
zeile = ActiveCell.Row - 1
Rows(zeile & ":" & zeile + 2).Select
Selection.EntireRow.Hidden = True
leerzeilen = 0
Range("A" & zeile + 3).Activate
End If
If ActiveCell.Value = "" Then
leerzeilen = leerzeilen + 1
End If
ActiveCell.Offset(1, 0).Activate
Loop
End Sub
-----------------------------
Dieses hier ändert auf anklicken der Zellen deren Inhalt. Mein Problem nun, wenn ich die Zeile mit dem "¢" vie erstes Makro ansteure, wird sie von diesem Makro verändert:
-----------------------------

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim zeile As Integer
If Target.Cells.Count > 1 Then Exit Sub
If ActiveCell.Text = "¢" Or ActiveCell.Text = "¤" Then
If ActiveCell.Column > 3 And ActiveCell.Column < 9 Then
zeile = ActiveCell.Row
Range("D" & zeile & ":H" & zeile).Value = "¢"
ActiveCell.Value = "¤"
End If
If ActiveCell.Column = 1 Then
If ActiveCell.Value = "¢" Then
ActiveCell.Value = "¤"
Else
ActiveCell.Value = "¢"
End If
End If
End If
End Sub

Gruss Michal
Anzeige
AW: Makro abstellen während anderes läuft
Ulf
Kein Wunder, durch den ersten Code wird jedesmal der zweite Code ausgeführt.
Verzichte in dem ersten Code auf select und activate.
Ulf
AW: Makro abstellen während anderes läuft
25.10.2004 12:10:45
Michal
Das ist ja genau mein Problem... Durch was ersetze ich denn Select und Activate... Funktionieren sollte es ja trotzdem noch?
Gruss Michal
AW: Makro abstellen während anderes läuft
Ulf
Das zu korrigieren ist mir zu stressig, schreib am Anfang:
Application.EnableEvents = false
und am Schluss:
Application.EnableEvents = True
Ulf
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige