Hi, ein Datensatz enthält zu viele Zeilen, ich möchte eine Zeile erhalten und die nächsten 9 Zeilen entfernen. Manuell geht das mit Zeilen markieren und dann Zeilen löschen. Bei einer 5-stelligen Zeilenanzahl manuell kaum machbar. Wie kann man das vom Programm erledigen lassen? Aber nicht ausblenden oder filtern, die Datei soll nach dem Speichern nur noch 10% der Zeilen enthalten. Jürgen
Wenn du es nicht mit VBA machen willst, könntest du ein zweites Blatt machen und hoermit pfuschen: https://www.computerwissen.de/software/office/excel/funktionen-excel/excel-formeln-erstellen-so-gehts/bezug-auf-excel-zelle-per-formel-erzeugen/ Das Blatt dann in eine Neue Datei kopieren (mit rechtsklick Inhalte einfüge->Werte).
Alles vor dem Block (Suchen Ende), markieren (Shift) bis zum Anfang, in ein leeres Formular einfügen. Alles hinter dem Block (Suchen Anfang), markieren (Shift) bis zum Ende, in ein leeres Formular einfügen oder in vormals Leeres Formular mit dem Anfangsteil. Bevor Du das "Original" löschst kannst Du das Ergebnis in Ruhe betrachten. PgUp und PgDn und die Cursor-Funktionen funktionieren auch mit gehaltener Shift-Taste. Eventuell kann es sinnvoll sein, an den "Schnittstellen" Leerzeilen einzufügen, damit man, beim schnellen Page Down, die Schnittstelle nicht übersieht. Willst Du auf der sicheren Seite bleiben, so kann es nicht schaden, erst mal mit einer Kopie (auf Dateiebene) zu arbeiten.
ich würde csv + cut + head + cat verwenden. problem: formeln gehen verloren, also nur wenn keine vorhanden sind...
du könntest mit "INDIREKT" über Index Zugerifen. Heist: Erste Spalte: laufend durchnummerieren Zweite Spalte: =INDIREKT(VERKETTEN("(#Zielspalte)";(ErsteSpalte)*(#nWert))) Mit: (#Zielspalte) = Spalte mit den Zielwerten z.B. A (#nWert) = Wievielter Wert ausgelesen werden soll. z.B. 9 Edit: Jürgen S. schrieb: > die Datei soll nach dem Speichern nur noch 10% der Zeilen Dann die Daten Kopieren, und in eine Neue Mappe mit "Werte einfügen" einfügen
:
Bearbeitet durch User
Oder einfach mal die 10 Minuten Lebenszeit investieren und das Erstellen von Makros erlernen...
Jürgen S. schrieb: > Hi, > > ein Datensatz enthält zu viele Zeilen, ich möchte eine Zeile erhalten > und die nächsten 9 Zeilen entfernen. Manuell geht das mit Zeilen > markieren und dann Zeilen löschen. Bei einer 5-stelligen Zeilenanzahl > manuell kaum machbar. > > Wie kann man das vom Programm erledigen lassen? Aber nicht ausblenden > oder filtern, die Datei soll nach dem Speichern nur noch 10% der Zeilen > enthalten. > > Jürgen So geht's ohne Makro: 1. Du fügst ganz links eine zusätzliche Spalte ein. 2. in die erste Zelle (A1) schreibst du eine 1 3. in die zweite Zelle (A2) schreibst du folgende Formel: =(WENN(A1<9;A1+1;1)) 4. Den Inhalt der zweiten Zelle kopierst du in die Zwischenablage - z.B. mit Strg & C. 5. Jetzt setzt du den Cursor in die Zelle (B1) 6. Drücke Ende und dann Pfeil nach unten. Damit kommst du in die letzte Zeile deiner Daten, ohne den ganzen Weg herunterscrollen zu müssen. 7. Jetzt setzt du den Cursor in die letzten Datenzeile in der Spalte A 8. Drücke die Shift Taste, halte sie gedrückt und dann wieder Ende und Pfeil nach Oben. Damit ist die gesamte Spalte A markiert, wieder ohne ewiges gescrolle - egal, wie lange deine Datei auch ist. 9. Jetzt fügst du die Formel aus der Zwischenablage ein - z.B. mit Strg & V. In der ersten Spalte wiederholen sich jetzt die Zahlen 1 bis 9. 10. Aktiviere die Funktion Daten > Filter für das gesamte Tabellenblatt. 11. Stell den Filter in der ersten Spalte so ein, dass nur die Zeilen mit 1-8 zu sehen sind. 12. Markiere den kompletten Datenbereich, der noch angezeigt wird. Ohne scrollen geht das wieder so: Cursor in Zelle A1, Shift halten, Ende, Pfeil nach unten, Ende, Pfeil nach rechts 13. Mit Strg & - löscht du die markierten Zellen (nicht mit Entf, das macht sie nur leer). 14. Jetzt noch Spalte 1 löschen und den Filter wieder ausschalten. Wenn es sehr, sehr viele Zeilen sind, lohnt es sich, die Formeln in der ersten Spalte durch Werte zu ersetzen (beim Einfügen rechtsklick -> Einfügeoptionen -> Werte) und dann anstatt den Filter zu benutzen, nach der ersten Spalte zu sortieren und anschließend die unerwünschten Zeilen zu löschen. Das braucht weniger Rechenzeit. Entscheidend ist das Navigieren mit Ende und den Pfeiltasten bzw. das Markieren großer Bereiche mit Shift, Ende und den Pfeiltasten, wie in den Schritten 6,7,8 und 12 beschrieben. Sonst scrollst du dir einen Wolf ...
:
Bearbeitet durch User
Du könntest die Tabelle nach msaccess exportieren und eine passende query machen.
Im Grunde ganz einfach, selbst mir stark eingeschränkten VBA-Kenntnissen. Trau dich und spiel einfach mal ne Runde: Ansicht; Makros; Aufzeichnung starten; Lösche die ersten 9 Zeilen und dann die nächsten neun Zeilen. Makro-Aufzeichnung beenden. Alt F11 und du kannst dir die Makrozeilen im VBA-Editor ansehen, modifizieren. Suchst du spezielle Befehle, findest du 1000sende Hilfestellungen im Netz. Auf diese Art und Weise lernst du richtig viel und vor allem verliert man die Angst vor sowas. 🍀 Viel Erfolg!
Filtern und kopieren.. kopieren nach Selektion durch Modulo 10 auf Spaltennummer..etc.. Aber kein VBA oder so.
Sebastian S. schrieb: > Alles vor dem Block (Suchen Ende), markieren (Shift) bis zum Anfang, in > ein leeres Formular einfügen. Es gibt keine Blöcke. Es gibt viele tausend Zeilen und er will jede 10.
Totomitharry schrieb: > Filtern und kopieren.. Damit habe ich es hinbekommen. Wobei sich das Kopieren etwas hakelig zeigte, irgendwie war EXCEL die Datenmenge zu groß (Fehlermeldung >32.000). Dann eben in drei Durchgängen. Aber ich habe nun das, was ich wollte. Vielen Dank an alle für die Hilfestellung.
Kleiner Nebentipp. Leg eine neue Spalte an. Überschrift SORT. In die 1 Zelle (z.b. a2) schreibst du 1 . In die Zelle darunter =a2+1 Nun kopierst du die Zelle nach unten. Dabei wird automatisch ein Zähler hoch gezählt. Nun klickst du die Spalte SORT an, Kopieren und dann INHALTE !!! Einfügen. Punkt auf WERTE und OK. Das löschst die Formel und lässt nur die Werte stehen. Warum das ganze. Weil bei so Bearbeitungen besonders wenn man sortiert sehr gerne die Reihenfolge verloren geht. Wenn man nun nach SORT umsortiert danach ist die Reihenfolge wieder perfekt wie vorher. Da die Reihenfolge der Zeilen bei vielen meiner Tabellen wichtig ist, habe ich für so was sogar schon ein Makro. Und da ich noch Excel 2003 nutze, ist das alles nur 1 Klick. ;)
Gabriel M. schrieb: > du könntest mit "INDIREKT" über Index Zugerifen. Heist: > > > Erste Spalte: laufend durchnummerieren > Zweite Spalte: > =INDIREKT(VERKETTEN("(#Zielspalte)";(ErsteSpalte)*(#nWert))) > > Mit: > (#Zielspalte) = Spalte mit den Zielwerten z.B. A > (#nWert) = Wievielter Wert ausgelesen werden soll. z.B. 9 Die erste Spalte brauchst du dazu nicht, es gibt die Funktion zeile() (und auch spalte() - falls du das ganze in einem zweiten Tabellenblatt machen willst) Ansonsten: Ja, so würde ich das quick and dirty auch machen. Wenn öfter als zweimal, dann lieber Macro (oder Octave oder Python oder... irgendwas anderes, was Excel-Dateien einlesen kann, davon gibt es ja vieles) MfG, Arno
Jürgen S. schrieb: > irgendwie war EXCEL die Datenmenge zu groß (Fehlermeldung >32.000). OMG, wie scheißealt ist denn dieses Excel? Dürfte sich um das 2003er handeln. Das ist fast 20 Jahre alt! Wird wohl mal Zeit für was neueres...
Ich hatte auch mal das Problem, libreoffice verarbeitet mehr Zeilen und hat bessere Funktionen für so etwas. Bzw. Google calc online hat auch coole Features.
Totomitharry schrieb: > Ich hatte auch mal das Problem, libreoffice verarbeitet mehr Zeilen Halbwegs neuzeitliche Excel-Versionen tuen das ebenfalls. > und > hat bessere Funktionen für so etwas. Nein, die Funktionsvielfalt des Microsoft-Originals hat bisher keins der Plagiate erreicht, Und vor allem auch nicht: deren recht einfache Zugänglichkeit via VBA...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.