Office: (Office 2016) Löschen von Zeilen und anschließendes Kopieren dauert lange

Helfe beim Thema Löschen von Zeilen und anschließendes Kopieren dauert lange in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, kann mir einer helfen den abgebildeten Code zu optimieren? Wenn der Code durchläuft dauert es gefühlt 20 Sekunden bis er fertig ist. Und das... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Maddy55, 28. November 2020.

  1. Löschen von Zeilen und anschließendes Kopieren dauert lange


    Hallo, kann mir einer helfen den abgebildeten Code zu optimieren?

    Wenn der Code durchläuft dauert es gefühlt 20 Sekunden bis er fertig ist.
    Und das bei höchstens 20 Zeilen.

    Was macht der Code:
    Zunächst ermittelt er die letzte beschriebene Zeile in Spalte C im Sheet(3) und löscht alle Zeilen rückwärts bis Zeile 101.

    Nun springt er in die Sub Routine kopieren:
    Dann ermittelt er die letzte Zeile in Sheet(1) Spalte B
    Nun kopiert er den Inhalt in Spalte A ab Zeile 3 von Sheet(1) nach Sheet(3) in Spalte C ab Zeile 101
    Das gleiche mit den Inhalten von Spalte D, E und F auf Sheet(1)

    Code:
    Wäre Super wenn mir jemand bei der Routine weiterhelfen könnte, das der Code seine Arbeit schneller verrichtet.
    Gruß
    Maddy

    :)
     
  2. Benutze doch den Autofilter und arbeite mit Wertzuweisungen anstatt .Copy, sofern Dich lediglich die Werte und nicht noch Formate interessieren.

    Keep it simple
     
  3. Was mit Sicherheit einen Geschwindigkeitsgewinn bringt:
    1) Screenupdating ausschalten
    2) Autofilter statt zeilenweisem Löschen

    Was macht
    Code:
    was nicht auch
    Code:
    macht?
     
    MisterBurns, 30. November 2020
    #3
  4. Löschen von Zeilen und anschließendes Kopieren dauert lange

    Hallo,

    man könnte auch darüber nachdenken, die Daten in ein Array zu lesen, das man zeilenweise abarbeitet. Zwei weitere Arrays nehmen dann die zu kopierenden und die zu behaltenden Daten auf, die dann entsprechend in die Tabellen eingefügt werden.

    EDIT: Eine Beispieldatei mit ein paar Dummy-Datensätzen wäre hilfreich.
     
    Der Steuerfuzzi, 30. November 2020
    #4
  5. Uih, danke für die Antworten.

    Aber jetzt weiß ich gar nichts mehr.

    Mit Autofilter arbeiten??? Aber in den Zeilen oberhalb von Zeile 101 stehen ja auch Werte. Die sollen ja nicht angefasst werden.

    Screenupdating habe ich schon abgeschaltet.

    leider bin ich VBA Anfänger und manches kapiere ich einfach noch nicht
     
  6. Mach doch mal eine Beispieldatei mit ein paar (nicht zu wenigen) Dummy-Daten.
     
    Der Steuerfuzzi, 30. November 2020
    #6
  7. Kommt gleich
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
  8. Löschen von Zeilen und anschließendes Kopieren dauert lange

    Beim Löschen habe ich noch eine andere Idee (funktioniert aber nur, wenn in der Spalte H Werte stehen und keine Formeln):
    Code:
    Ergänzung: Das dürfte aber bei vielen nicht zusammenhängenden zu löschenden Zeilen relativ langsam sein (wie beim Autofilter aber auch). Daher würde ich das ganze lieber in ein Array packen.
     
    Der Steuerfuzzi, 30. November 2020
    #8
  9. Hallo Maddy55

    z.b. Zeilen löschen!


    PHP:
             Sub Zeilen_Löschen()
    Application.DisplayAlerts False
    With Worksheets
    ("Tabelle3")
    .
    Range("C102:C" & .Range(.Cells(Rows.Count3), .Cells(Rows.Count3)).End(xlUp).Row).AutoFilter Field:=1Criteria1:="<>" ""
    .AutoFilter.Range.Offset(10).SpecialCells(xlCellTypeVisible).Rows.Delete
    .Range("C102").AutoFilter
    End With
    Application
    .DisplayAlerts True
    End Sub
     
    m_i_c_h_a_e_l, 30. November 2020
    #9
  10. Jetzt verstehe ich gar nichts mehr.
    Habe nun eine Testmappe gebastelt, Sheet(1) und (3) genau so gefüllt wie im Original, und nun läuft der Code nicht mehr
    ???????????????
     
  11. Ergänzung: Das dürfte aber bei vielen nicht zusammenhängenden zu löschenden Zeilen relativ langsam sein (wie beim Autofilter aber auch). Daher würde ich das ganze lieber in ein Array packen.

    Leider stehen in Spalte H Formeln
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
  12. Die zu löschenden Zeilen werden anhand der Spalte H ausgewählt. Da steht aber nichts drin. Ist der Aufbau wirklich identisch zum Original?

    In Deiner Beispieldatei nicht ;-)
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
    Der Steuerfuzzi, 30. November 2020
    #12
  13. Löschen von Zeilen und anschließendes Kopieren dauert lange

    nein in der beispieldatei habe ich das nicht drin.
    Moment ändere ich mal ab.....
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
  14. So jetzt mit Formeln
     
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
  15.  
    Zuletzt von einem Moderator bearbeitet: 12. Januar 2021
Thema:

Löschen von Zeilen und anschließendes Kopieren dauert lange

Die Seite wird geladen...
  1. Löschen von Zeilen und anschließendes Kopieren dauert lange - Similar Threads - Löschen Zeilen anschließendes

  2. Bezugsfehler nach Zeilen löschen

    in Microsoft Excel Hilfe
    Bezugsfehler nach Zeilen löschen: Moin, ich kopiere Daten aus einer Textbase Datei in eine Excel Maske. Dadurch habe ich in Spalte X jeweils beliebige Nummern untereinander stehen. Diese wollte ich gerne hintereinander und mit...
  3. VBA ListBox Zeilen entsprechend in Tabelle löschen

    in Microsoft Excel Hilfe
    VBA ListBox Zeilen entsprechend in Tabelle löschen: Hallo zusammen, ich habe ein Problem mit dem Löschen von Inhalten aus meiner Tabelle anhand der Auswahl in der ListBox. Ich lese die Daten der ListBox aus einem Tabellenblatt ein. Multiselect ist...
  4. Zeilen automatisch löschen nach Vergleich mit zweiter Datei

    in Microsoft Excel Hilfe
    Zeilen automatisch löschen nach Vergleich mit zweiter Datei: Liebe Community, ich habe folgendes Problem. 1x im Monat wird eine Liste, hier als Beispiel "Dezember 2020", per Mail an verschiedene Nutzer gesendet. In dieser Datei sollen für mich nur Zeilen...
  5. Löschen von Zeilen mit Makro

    in Microsoft Excel Hilfe
    Löschen von Zeilen mit Makro: Hallo, ich hätte folgendes Vorhaben: ein Makro soll alle Zeilen löschen beginnend ab der zweiten Zeile, bis zu der Zeile, die einen bestimmten Wert enthält (z.B. "XYZ"). Diese soll stehen bleiben....
  6. Zeilen mit bestimmten Inhalten löschen lassen

    in Microsoft Excel Hilfe
    Zeilen mit bestimmten Inhalten löschen lassen: Hallo, gibt es eine Möglichkeit ganze Zeilen die in einer bestimmten Zelle einen bestimmten Eintrag haben automatisch löschen zu lassen? Manuell über Autofilter und dann die Zeilen löschen finde...
  7. Spalten/Zeilen löschen

    in Microsoft Excel Hilfe
    Spalten/Zeilen löschen: Hallo!!! Ich habe ein Speicherproblem mit einer Excel-Datei. Von einem Arbeitskollegen habe ich eine Excel-Datei übernommen die mehrere Blätter enthält. Außer ein paar kleinen Grafiken ist nur...
  8. Excel vba Löschen der gesuchten Zeile

    in Microsoft Excel Hilfe
    Excel vba Löschen der gesuchten Zeile: Hallo Ich habe eine UserForm erstellt in der sich 4 Comboboxen in Abhängigkeit befinden. Ich würde jetzt gerne die Auswahl, also die ganze Zeile, löschen lassen. Die Tabelle besteht auf 20...