Office: (Office 2016) Größere Datenmengen effektiv Filtern und sichtbare Zeile kopieren

Helfe beim Thema Größere Datenmengen effektiv Filtern und sichtbare Zeile kopieren in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo Zusammen, ich komme dank eurer Hilfe gut voran. Leider wird meine "Datenbank" mittlerweile so groß, dass mit Autofilter gefilterte Daten... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von chris77, 5. März 2020.

  1. Größere Datenmengen effektiv Filtern und sichtbare Zeile kopieren


    Hallo Zusammen,

    ich komme dank eurer Hilfe gut voran.

    Leider wird meine "Datenbank" mittlerweile so groß, dass mit Autofilter gefilterte Daten mehrere Sekunden benötigen, bis diese auf ein anderes Tabellenblatt kopiert sind.

    Ursprünglich habe ich die sichtbaren Zeilen mit einer For-Next-Schleife auf "hidden = false" überprüft und dann alle Zeilen auf die das zutraf kopiert. Das dauert aber mittlerweile zu lang. Hab dann versucht mit "Selection.SpecialCells(xlCellTypeVisible).Copy" das ganze zu beschleunigen - leider ohne großen Erfolg.

    Gibt es eine effektivere Methode das Ganze zu beschleunigen? Evtl. einen komplett neuen Ansatz (auch ohne Autofilter)?

    Vielen Dank für eure Hilfe!

    VG
    Chris
     
    chris77, 5. März 2020
    #1
  2. Beverly
    Beverly Erfahrener User
    Hi Chris,

    hast du das Kopieren schon mal auf diesem Weg versucht:

    Code:
    Dim rngBereich As Range
    With ActiveSheet.AutoFilter
        Set rngBereich = .Range.SpecialCells(xlCellTypeVisible)
        rngBereich.Copy Worksheets("Tabelle2").Range("A1")
    End With
    
    
    Eventuell kannst du noch anschließend bei Bedarf die 1. kopierte Zeile (welches die Überschriftenzeile des Autofilterbereichs ist) löschen.

    Bis später,
    Karin
     
    Beverly, 6. März 2020
    #2
  3. Hallo Karin,

    danke für Deinen Tip. "xlCellTypeVisible" hatte ich schon probiert. Es scheint keinerlei Geschwindigkeitsvorteile zu bieten.

    Mittlerweile ist mir aufgefallen, dass die Autofilterfunktion sehr langsam ist. Gibt es hierfür evtl. eine anderen Lösung?

    VG
    Chris
     
    chris77, 8. März 2020
    #3
  4. Beverly
    Beverly Erfahrener User

    Größere Datenmengen effektiv Filtern und sichtbare Zeile kopieren

    Hi Chris,

    dann laufe ohne Filter in einer Schleife über alle Zeilen und prüfe, ob in der Spalte, nach der du normalerweise filtern würdest, die betreffende Bedingung zutrifft und kopiere dann diese Zeile.

    Bis später,
    Karin
     
    Beverly, 8. März 2020
    #4
  5. Hallo Karin,

    ich habe es jetzt nochmal mit diesem Code von Dir probiert. Einmal hat es funktioniert, aber jetzt bekomme ich immer einen "Laufzeitfehler 91: Objektvariable oder With-Blockvariable nicht festgelegt". Der Fehler tritt mit der Zeile "Set rngBereich = ….." auf.
    Ich habe nichts verändert und suche seit Stunden (mittlerweile verzweifelt) den Fehler.

    Code:
    Dim rngBereich As Range
    With ActiveSheet.AutoFilter
        Set rngBereich = .Range.SpecialCells(xlCellTypeVisible)
        rngBereich.Copy Worksheets("Tabelle2").Range("A1")
    End With
    
    Grüße
    Chris
     
    chris77, 9. März 2020
    #5
  6. Beverly
    Beverly Erfahrener User
    Hi Chris,

    in dem Fall gibt es in deiner Tabelle keinen Autofilterbereich.

    Bis später,
    Karin
     
    Beverly, 9. März 2020
    #6
  7. Hallo Karin,

    irgendwie hat mich der Autofilter und seine "Langsamkeit" jetzt so genervt, dass ich meine Tabelle nach Access verschoben habe und Excel nur noch als Frontend benutze. Mit ADODB bekomme ich die Abfragen mittlerweile ganz gut hin. Schreiben und synchronisieren kann ich noch nicht....und bin auch noch auf der Suche nach einem guten Tutorial.
    Aber allein schon die Geschwindigkeit ist super :)

    Hat jemand von euch einen Link für ein (gutes) ADO Toturial indem erklärt wird, wie ich von der Userfom in Excel direkt in Access schreibe bzw. Access mit Excel synchron halte?

    Vielen Dank für eure Hilfe!

    Grüße
    Chris
     
    chris77, 10. März 2020
    #7
  8. Größere Datenmengen effektiv Filtern und sichtbare Zeile kopieren

    chris77, 10. März 2020
    #8
  9. Beverly
    Beverly Erfahrener User
    Hi Chris,

    ich verstehe nicht, weshalb du so auf dem Autofilter herumreitest, es gibt doch andere, schnellere Möglichkeiten - Schleife über alle Zeilen wie bereits geschrieben, auch mit Arrays kann man arbeiten, ohne dass man in der Schleife Datensatz für Datensatz einzeln kopiert...

    Bis später,
    Karin
     
    Beverly, 11. März 2020
    #9
  10. Hallo Karin,

    na was heißt auf dem "Autofilter herumreitest"? Es hat sich für mich halt einfach herausgestellt, dass dieser bei mehr Datensätzen recht langsam wird. Ich habe eine Möglichkeit gesucht in der ich gefilterte Daten innerhalb ein oder 2 zehntel Sekunden in eine Listbox übertragen kann. Leider haben alle von mir versuchten Möglichkeiten versagt.
    Deshalb mein Ausweg mit der Access DB. Diese hat bei größeren Datenmengen ja schliesslich auch noch weitere Vorteile.
    Die von Dir beschriebene Schleife wird ab einem bestimmten Datensatzbestand auch sehr langsam. Mit Arrays im großen Stil bin ich nicht so vertraut - deshalb auch nicht probiert.

    Ich wollte Dir nicht auf den Schlips treten. Habe schon viele hilfreiche Tips von Dir und anderen bekommen. Aber gerade mit Blick auf zukünftige Datenmengen war Access jetzt einfach das Richtige. Und von Access ist dann ein Umstieg auf SQL recht einfach.

    VG
    Chris
     
    chris77, 11. März 2020
    #10
  11. Beverly
    Beverly Erfahrener User
    Hi Chris,

    wenn du dein Problem anders gelöst hast und damit zufrieden bist ist das doch völlig in Ordnung. Ich habe mich auch nicht auf den Schlips getreten gefühlt, ich bin halt nur der Meinung (und habe dazu auch anderweitig Tests gelesen), dass man nicht alles mit Autofilter lösen sollte, da er bei einer größeren Datenmenge eben wesentlich langsamer ist als eine ganz normale Schleife über die Datensätze mit Prüfung der betreffenden Bedingung(en) - nur darauf wollte ich hinweisen.

    Bis später,
    Karin
     
    Beverly, 12. März 2020
    #11
  12. Hallo Karin,

    dann is ja gut :))

    Nur so zum Verständnis.
    Es kommen jeden Tag ca. 220 Datensätze hinzu. Jeder Datensatz enthält rund 50 verschiedene Daten. Das macht bei 5 Werktagen ca. 1000 Datensätze mal 50 Einzeldaten. Nachdem ich erst bei 1500 Datensätzen war und schon Performanceprobleme hatte, war das wahrscheinlich der richtige Schritt. Ich hoffe Du kannst mir zustimmen.
    Jetzt bin ich nach oben offen und kann auch recht einfach auf SQL umsteigen falls dies irgendwann nötig sein sollte.
    Da geplant ist, dass sich das Datenvolumen bei erfolgreicher Einführung fast verzehnfachen wird, muss ich mir keine großen Sorgen um die Zukunft machen .... das hoffe ich zumindest....

    VG
    Chris
     
    chris77, 12. März 2020
    #12
  13. Beverly
    Beverly Erfahrener User

    Größere Datenmengen effektiv Filtern und sichtbare Zeile kopieren

    Hi Chris,

    Excel ist sowieso nicht dazu gedacht, als Datenbank zu fungieren - nur wird es halt oft dazu "missbraucht". Bei kleineren Datenmengen mag das durchaus funktionieren, aber es macht eben Probleme, wenn die Datenmengen ein bestimmtes Maß übersteigen. Als Datenbankprogramm ist Access schon das richtige, da es eben auf größere Datenmengen ausgelegt ist. Da ich (vor Jahren) auch ein wenig Access programmiert habe kann ich dir nur dazu gratulieren, dass du bei deinen großen Datenmengen darauf umgestiegen bist.

    Bis später,
    Karin
     
    Beverly, 12. März 2020
    #13
Thema:

Größere Datenmengen effektiv Filtern und sichtbare Zeile kopieren

Die Seite wird geladen...
  1. Größere Datenmengen effektiv Filtern und sichtbare Zeile kopieren - Similar Threads - Größere Datenmengen effektiv

  2. Formel auf andere Zellen unterschiedlicher Größe anwenden

    in Microsoft Excel Hilfe
    Formel auf andere Zellen unterschiedlicher Größe anwenden: Hallo zusammen, ich habe eine Formel gebastelt, die wie angehängt in der Beispiel-Excel zu sehen ist, funktioniert. Kann ich die Formel so vereinfachen, dass ich nicht 3x die angepasste Formel...
  3. Wenn der Wert größer ist als 10 will ich die Differenz in einer Spalte haben

    in Microsoft Excel Hilfe
    Wenn der Wert größer ist als 10 will ich die Differenz in einer Spalte haben: Hallo zusammen, auf dem Bild im Anhang ist mein Zeiterfassungssystem zusehen. Spalte E ist meine Gesamtstundenzahl, wenn diese Zahl größer ist als 10 möchte ich die Differenz daraus in Spalte I...
  4. Zwei gleiche Dateien unterschiedlich groß?

    in Microsoft Excel Hilfe
    Zwei gleiche Dateien unterschiedlich groß?: Hallo, erst einmal einen schönen guten morgen. Ich bin neu hier und hoffe evtl. Hilfe bei meinem Problem zu erhalten :-) Folgendes Problem. Ich erstelle jeden Monat eine PPT (Ja ich weiß es...
  5. Suchfunktion beschleunigen

    in Microsoft Word Hilfe
    Suchfunktion beschleunigen: Hallo, ich habe ein sehr großes Word-Dokument in dem ich sehr oft suche. Die Suche starte ich i.d.R. vom Anfang des Dokuments weil ich dann sehr häufig eine Fundstelle direkt im Inhaltsverzeichnis...
  6. SVERWEIS Große Datenmenge

    in Microsoft Excel Hilfe
    SVERWEIS Große Datenmenge: Hallo Zusammen, ich habe ein kleines Problem mit dem Sverweis. Folgendes ich habe in Spalte A eine Adresse (Str. + Hausnummer) diese möchte ich eintragen. ich habe einen großen Datensatz mit ca...
  7. Wie am besten große Datenmengen organisieren?

    in Microsoft Access Hilfe
    Wie am besten große Datenmengen organisieren?: Hallo zusammen, ich exportiere für verschiedene Materialnummern Daten (Arbeitspläne und Stücklisten) aus SAP und importiere diese in Access (ca. 40.000 DS pro Monat). Um immer den aktuellsten...
  8. große Datenmengen reduzieren

    in Microsoft Excel Hilfe
    große Datenmengen reduzieren: Hallo! Ich habe das Problem eine sehr große Datenmenge aus einer Messreihe zu haben (rd 19000 Werte). Nun möchte ich diese reduzieren, indem ich zB immer aus 5 Werten den Durchschnitt bilde und...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden