Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1728to1732
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 suchen-finden zu langsam

Makro suchen-finden zu langsam
19.12.2019 20:24:30
Markus
Hallo,
ich benötige bitte eure Hilfe. Ich habe ein Makro in verwendung, welches mir ein Wert sucht und dementsprechend nach Tätigkeit ausführt. jedoch das Problem ist, dass dieses ewig dauert.
Hier das Makro:
Private Sub Suchen_Löschen()
Dim Anforderung As Range
Set Ersatzteile= Worksheets("Auto").Range("A1:A9").Find(Hinterachse.Listbox1)
Ersatzteile.Offset(0, 2).Delete shift:=xlUp
Ersatzteile.Offset(0, 1).Delete shift:=xlUp
Ersatzteile.Delete shift:=xlUp
End Sub
Bitte um Rückmeldung und hilfe, wie dieses optimiert werden kann
Danke
Markus

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro suchen-finden zu langsam
19.12.2019 20:35:14
Martin
Hi Markus,
teste mal, ob es so schneller geht:
Private Sub Suchen_Löschen()
Dim Anforderung As Range
Set Ersatzteile = Worksheets("Auto").Range("A1:A9").Find(Hinterachse.Listbox1)
With Application
.ScreenUpdating = False
.Calculation = xlCalculationManual
With Ersatzteile
.Cells(.Offset(0, 1), .Offset(0, 2)).Delete shift:=xlUp
.Delete shift:=xlUp
End With
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
End With
End Sub
VG Martin
AW: Makro suchen-finden zu langsam
19.12.2019 20:43:36
Markus
Hallo Martin,
habe es jetzt mal getestet,
leider tritt ein Fehelr auf "Anwendung oder Objekt benutzerdefinierte Fehler"
Spalte .cell(.offset .............. wird gelb markiert
BG
Markus
Anzeige
AW: Makro suchen-finden zu langsam
19.12.2019 20:58:57
Martin
Hallo Markus,
ich hatte es nicht getestet und hatte etwas versucht. Naja, dann mache ich es wieder so wie es vorher war. So sollte es aber (hoffentlich) klappen:
Private Sub Suchen_Löschen()
With Application
.ScreenUpdating = False
.Calculation = xlCalculationManual
With Worksheets("Auto").Range("A1:A9").Find(Hinterachse.Listbox1)
.Offset(0, 2).Delete shift:=xlUp
.Offset(0, 1).Delete shift:=xlUp
End With
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
End With
End Sub
VG Martin
Ups, da hatte eine Zeile gefehlt...
19.12.2019 21:00:36
Martin

Private Sub Suchen_Löschen()
With Application
.ScreenUpdating = False
.Calculation = xlCalculationManual
With Worksheets("Auto").Range("A1:A9").Find(Hinterachse.Listbox1)
.Offset(0, 2).Delete shift:=xlUp
.Offset(0, 1).Delete shift:=xlUp
.Delete shift:=xlUp
End With
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
End With
End Sub

Anzeige
AW: Ups, da hatte eine Zeile gefehlt...
20.12.2019 10:10:23
Markus
Hallo Martin,
leider dauert das Makro immer noch ca. 1,5min
Gibt es Alternativen ?
beste Grüße
Markus
AW: Ups, da hatte eine Zeile gefehlt...
20.12.2019 10:28:56
Nepumuk
Hallo Markus,
so besser.
Private Sub Suchen_Löschen()
    
    With Application
        .ScreenUpdating = False
        .Calculation = xlCalculationManual
        .EnableEvents = False
        
        With Worksheets("Auto").Range("A1:A9").Find(Hinterachse.ListBox1)
            .Range(.Cells(0, 1), .Cells(0, 3)).Delete Shift:=xlUp
        End With
        
        .EnableEvents = True
        .Calculation = xlCalculationAutomatic
        .ScreenUpdating = True
    End With
End Sub

Gruß
Nepumuk
Anzeige
AW: Ups, da hatte eine Zeile gefehlt...
20.12.2019 10:37:13
Markus
Hallo Nepumuk
viel Besser, statt 95 sek nur mehr 30 sek Laufzeit :)
Danke
Vlt gehts noch scheller, vlt hat ja noch jemand ein Vorschlag ;)
AW: Ups, da hatte eine Zeile gefehlt...
20.12.2019 10:40:02
Nepumuk
Hallo Markus,
ohne deine Mappe ist das nicht möglich.
Gruß
Nepumuk
AW: Ups, da hatte eine Zeile gefehlt...
20.12.2019 11:48:27
Markus
hallo Nepumuk,
hier ist mir ein Fehler aufgefallen, wenn ein Wert aus Beispielweise A4 (wird aus Listbox ausgewählt, aber Wert ist in Zelle A4) ausgewählt und dies gelöscht werden soll, funktioniert dieses Makro nicht.
Hast du hier eine Lösung ?
LG
Markus
AW: Ups, da hatte eine Zeile gefehlt...
20.12.2019 11:52:48
Nepumuk
Hallo Markus,
wie schon geschrieben, ohne deine Mappe kann ich nichts dazu sagen. Was soll ich mir unter "funktioniert dieses Makro nicht" vorstellen?
Gruß
Nepumuk
Anzeige
AW: Ups, da hatte eine Zeile gefehlt...
20.12.2019 11:58:43
Markus
habe es jetzt nochmals getestet:
Er findet den Wert von der Listbox, aber er löscht mir immer den Wert/Zellen unter den gefunden und gewählten Wert. Der gewählte Wert bleibt dann bestehen :(
BG
Markus
AW: Ups, da hatte eine Zeile gefehlt...
20.12.2019 14:14:43
Markus
gibt es hier keine Lösung ?
BG
Markus
AW: Ups, da hatte eine Zeile gefehlt...
23.12.2019 13:09:01
Werner
Hallo,
wie oft soll man dir noch schreiben, dass du deine Mappe hier hochladen sollst?
Gruß Werner
AW: Ups, da hatte eine Zeile gefehlt...
20.12.2019 10:34:58
snb

Private Sub M_snb()
With Sheets("auto").Range("A1:A9")
.Replace ListBox1, ""
.SpecialCells(4).EntireRow.Delete
end with
End Sub

Alternative
20.12.2019 10:43:46
snb
Oder:
Private Sub M_snb()
sn = Range("A1:A9")
For j = 1 To UBound(sn)
If sn(j, 1) = "bb4" Then Exit For
Next
If j 

Anzeige
AW: Makro suchen-finden zu langsam
20.12.2019 14:31:42
Daniel
Hi
Set Ersatzteile= Worksheets("Auto").Range("A1:A9").Find(Hinterachse.Listbox1)
If not Ersatzteile is Nothing then Ersatzteile.Resize(1, 3).Delete shift:=xlUp
Gruß Daniel
AW: Makro suchen-finden zu langsam
20.12.2019 20:02:40
Markus
Hallo Daniel
Funktioniert top Danke
Schöne Feiertage und alles gute für das neue Jahr
Markus

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige