Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1388to1392
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro stoppen und wieder starten, wenn anderes Mak

Makro stoppen und wieder starten, wenn anderes Mak
23.10.2014 02:08:39
Anja
Hallo,
Ich habe folgendes Problem:
Ich habe ein Makro das auf die Eingaben reagiert. Es hat zwei Funktionen in meiner Datei. Im ersten Teil schreibt es den letzten eingeben Wert in Zelle AN 1. Der zweite Teil ist eine Suchfunktion. Sie arbeitet mit dem Autofilter, wenn man in eine bestimmte Zelle ein Wort oder Wortteil eingibt. Dann werden nur diese Daten angezeigt. Es klappt super.
Jetzt habe ich aber das Problem, das ich beim Kopieren und Einfügen von Zeilen dieses Makro auch auslöse, was zu langen Wartezeiten führt. Je nach Anzahl der eingefügten Zeilen läuft es ewig. Ich muss Zeilen einfügen um z.B. die Tabelle zu verlängern.
Ich hatte eine Lösung gefunden, die bei mir auf Excel 7 auch funktioniert, indem ich in meinen Einfüge-Button nachfolgenden Code eingefügt habe. In Excel 10 bekomme ich eine Fehlermeldung. Warum? Gibt es eine andere Möglichkeit zu verhindern, dass das Makro mit der Suchfunktion aktiviert wird, solange ein anderes Makro läuft. Also, wenn ich den Einfügen-Button betätige, dass das Suchmakro direkt angesprochen und ausgeschaltet wird und dann wieder angeschaltet wird, wenn das Einfügen abgeschlossen ist. Den Code für das mit der Suchfunktion habe ich weiter unten eingefügt.
Vielen Dank im Voraus!!!
Makro für Einfüge-Button:

Private Sub cmdEinfügen_Click()
Application.EnableEvents = False
ActiveSheet.Paste
Application.EnableEvents = True
ActiveSheet.Protect Password:="?"
End Sub

Durch die Codezeile Application.EnableEvents = False wird das Makro mit der Suchfunktion nicht mehr ausgelöst, wenn ich Zeilen einfüge. Nach Beendigung des Einfügens wird das Suchmakro wieder aktiviert.( Application.EnableEvents = True)
Makro für Suchfunktion:
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect Password:="?"
On Error Resume Next
Dim objRange As Range, objCell As Range
Set objRange = Intersect(Range("C12:C30000"), Target)
If Not objRange Is Nothing Then
For Each objCell In objRange
Range("AN1").Value = Target.Value
Sheets("Einträge").Range("AN1").Copy Sheets("Auswahlliste").Range("AN1")
Next
End If
If Intersect(Range("SucheEintrag"), Target) Is Nothing Then Exit Sub
Select Case Target.Column
Case 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 'Az, Name, IBAN, Info Externe,  _
Anmerkung, InsoG, ger. Az [enthält]
If IsEmpty(Target) Then
Selection.AutoFilter Field:=Target.Column
Else
Selection.AutoFilter Field:=Target.Column, Criteria1:="=*" & Target.Text & "*",  _
Operator:=xlAnd
ActiveWindow.LargeScroll Down:=-6
End If
End Select
ActiveSheet.Protect Password:="?"
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro stoppen und wieder starten, wenn anderes Mak
23.10.2014 07:17:31
Hajo_Zi
schalte bei Change die Reaktion auf die Eingabe auch aus und ein.

AW: Makro stoppen und wieder starten, wenn anderes Mak
23.10.2014 21:26:49
Anja
Hallo Hajo,
danke für den Tipp. Ich werde das morgen mal ausprobieren, weil ich nur bei meiner Arbeit Excel 10 habe. Ich verstehe aber trotzdem nicht, warum es auf meinem Computer mit 07 problemlos läuft, aber auf dem Rechner mit Excel 10 nicht.
Ich werde mich morgen noch einmal melden.
Gruß
Anja
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige