Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: PowerQuery: Zellen füllen/Spalten Filter

PowerQuery: Zellen füllen/Spalten Filter
25.01.2023 14:33:50
Dirk
Hallo zusammen,
eine bzw. zwei Fragen zu PowerQuery: Ich habe eine große Datei, die monatlich neu erstellt wird und bis zu 150 MB groß sein kann, teilweise auch größer. Eine Beispieldatei habe ich bereits in PowerQuery transformiert, die Spalten gelöscht, die uninteressant sind und um einige Spalten erweitert, die ich zusätzlich für Auswertungen benötigen würde.
Erste Frage: Ich habe eine Spalte mit Rechnungsnummer (Original) und eine zweite Spalte ebenfalls mit Rechnungsnummer (Korrekturen). Die zweite Spalte bezieht sich auf die erste und enthält nur Korrekturbelege zur ersten Spalte. Nun sind dort zusätzlich auch noch leere Zellen, so das der Hinweis dort fehlt zu welcher ursprünglichen Rechnung sich dieser Korrekturbeleg bezieht. Beispiel:
Original Rg Korrekturen
leere Zelle MHNDR567
FRAIR1234 MHNNR789
Erste Frage: Kann ich PowerQuery sagen, das er diese Zelle mit dem Wert der Original Rg füllen soll? Die Rg Nr kann, wie im Bsp, unter der leeren Zelle stehen, aber auch darunter.
Zweite Frage: Diese Datei muss gelegentlich auf unterschiedliche Kunden gefiltert werden über eine Spalte in der der Kundenname steht. Beispiel Siemens, Amazon usw.
Im Ergebnis soll die Original Rechnung stehen mit den dazugehörigen Korrekturbelegen. Beispiel:
Kunde Original Rg Korrekturen
Siemens A DUSR1234 DUSNR567
DUSDR999
Siemens B CGNR3333 CGNNR444
CGNDR111
Ich hoffe Ihr könnt mir helfen. Danke
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zweimal ja; doch ...
25.01.2023 14:55:09
neopa
Hallo Dirk,
... (D)eine Beispieldatei mit ein paar mehr Datensätzen (können Dummydaten sein) wäre schon hilfreich, wenn Du es konkreter haben möchtest.
Gruß Werner
.. , - ...
AW: PowerQuery: Zellen füllen/Spalten Filter
25.01.2023 15:01:22
Yal
Hallo Dirk,
zu Pkt 1:
im Menü "Transformieren", Funktion "Ausfüllen", "nach unten" oder "nach oben" wählen.
zu Pkt 2:
Die Filterung erfoglt eigentlich erst, nachdem die Daten an Excel zurückgegeben werden. Wenn Du aber "eine Datei pro Kunden" haben möchtest, z.B. weil Du diese Datei dem Kunden zusenden muss, dann musst Du über VBA gehen.
_ in Excel in den Tabellentools vom Abfrage-Ergebnis gibt es die Unterfunktion zu "Aktualisieren". Die letzte ist "Verbindungeingenschaften".
_ Darin findest Du im Reiter "Definition" den "SELECT * FROM [Tabelle1]" (oder ähnlich)
_ den musst Du anpassen:
SELECT * FROM [Tabelle1] Where [Kunde] = "Siemens"
_ mach das unter laufende Makrorekorder ("MR"), dann hast Du den Code den Du brauchst.
_ die Tabelle muss dann in Bereich konvertiert werden (auch unter MR) und als Datei gespeichert werden.
_ es muss anschliessend eine Schleife über alle Kunden erzeugt werden.
VG
Yal
Anzeige
AW: zu 2. hatte ich an pivotieren gedacht owT
25.01.2023 15:04:58
neopa
Gruß Werner
.. , - ...
Ja, wäre auch einfach
25.01.2023 15:10:32
Yal
Pivot auf dem Ergebnis und der Kunde als Seitenfilter. Gute Idee.
Es führt dann zu einer typische Pivot-Gestaltung. Wenn es nicht stört, dann leichter so.
VG
Yal
AW: ich dachte an pivotieren innerhalb PQ owT
25.01.2023 15:12:10
neopa
Gruß Werner
.. , - ...
Anzeige
AW: ich dachte an pivotieren innerhalb PQ owT
25.01.2023 15:21:17
Yal
Und dann in Excel pro Kunde die gefüllte Zeilen filtern und die nicht gewollte Spalten ausblenden?
Für die Anzeige gut, für das Speichern der Datensätze, falls an den Kunden zu senden wäre (zu dieser Frage hat sich Michael nicht geäussert), müsste ein Copy-Paste der sichtbare zellen in eine neue Mappe erfolgen. Man kommt so oder so nicht eine VBA-Automation herum (wie gesagt: falls).
VG
Yal
Anzeige
AW: wie bereits geschrieben ...
25.01.2023 15:33:27
neopa
Hallo Yal,
... ich habe meine Lösung nur "angedacht".
Solange keine konkrete Datenstruktur vorliegt, kann man mit dem "angedachten" natürlich (auch völlig) daneben liegen. Aber momentan bin ich noch der Meinung, dass zum Zusammenstellen der notwendigen Daten man mit PQ allein zum angestrebten kommen könnte, wenn der Kunde für den es getan werden soll zumindest in einer Zelle vorgegeben ist/wird.
Gruß Werner
.. , - ...
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

PowerQuery: Leere Zellen füllen und Spalten filtern in Excel


Schritt-für-Schritt-Anleitung

  1. PowerQuery öffnen: Lade deine Daten in PowerQuery, indem du auf "Daten" > "Daten abrufen" klickst.

  2. Leere Zellen füllen:

    • Wähle die Spalte mit den leeren Zellen aus.
    • Gehe zum Menü "Transformieren".
    • Wähle die Funktion "Ausfüllen" und dann "Nach unten" aus. So füllst du die leeren Zellen mit dem Wert der letzten nicht-leeren Zelle.
    • Alternativ kannst du auch "Nach oben" wählen, falls der relevante Wert darüber steht.
  3. Spaltenfilter anwenden:

    • Um deine Daten nach Kunden zu filtern, gehe zu "Start" > "Spaltenfilter".
    • Wähle die Spalte mit den Kundennamen aus und setze den gewünschten Filter.
  4. Daten zurückgeben: Klicke auf "Schließen & Laden", um die bearbeiteten Daten in Excel anzuzeigen.


Häufige Fehler und Lösungen

  • Leere Zellen werden nicht gefüllt: Überprüfe, ob die Auswahl der Spalte korrekt ist und dass du die Funktion "Nach unten" oder "Nach oben" richtig angewendet hast.

  • Spaltenfilter funktioniert nicht: Stelle sicher, dass die Spalte, die du filtern möchtest, korrekt ausgewählt ist und keine leeren Zellen enthält, die den Filter stören könnten.


Alternative Methoden

  • Excel Zellen mit Blitzvorschau ausfüllen: Eine schnelle Methode, um Muster zu erkennen und Zellen automatisch auszufüllen. Beginne, den gewünschten Wert in die Zelle einzugeben und drücke dann die "Enter"-Taste, wenn der Vorschlag angezeigt wird.

  • Power Query leere Spalte hinzufügen: Du kannst eine neue Spalte in PowerQuery hinzufügen, die basierend auf bestimmten Bedingungen Werte aus anderen Spalten bezieht. Nutze die Funktion "Benutzerdefinierte Spalte" im Menü "Hinzufügen".


Praktische Beispiele

  • Beispiel 1: Du hast eine Spalte mit Rechnungsnummern und eine zweite Spalte für Korrekturen, die leer ist. Nach der Anwendung von "Nach unten" auf die Korrekturen-Spalte werden die leeren Zellen mit den entsprechenden Rechnungsnummern gefüllt.

  • Beispiel 2: Du möchtest für verschiedene Kunden eine separate Datei erstellen. Nach der Anwendung des Spaltenfilters kannst du die Daten für einen bestimmten Kunden exportieren.


Tipps für Profis

  • Nutze VBA zur Automatisierung von Prozessen, wenn du regelmäßig ähnliche Aufgaben hast, wie z.B. das Filtern und Exportieren von Daten für verschiedene Kunden.

  • Überlege, ob du Pivot-Tabellen in Verbindung mit PowerQuery verwenden möchtest, um deine Daten übersichtlicher darzustellen und zu analysieren.


FAQ: Häufige Fragen

1. Wie kann ich leere Zellen in PowerQuery füllen?
Du kannst die Funktion "Ausfüllen" im Menü "Transformieren" verwenden und auswählen, ob du nach oben oder nach unten ausfüllen möchtest.

2. Kann ich mehrere Spalten gleichzeitig filtern?
Ja, du kannst mehrere Spaltenfilter in PowerQuery anwenden, indem du einfach die gewünschten Filter für jede Spalte auswählst.

3. Was ist, wenn ich die Daten nicht in Excel zurückgeben kann?
Stelle sicher, dass alle Schritte in PowerQuery korrekt abgeschlossen sind und keine Fehler in den Transformationsschritten vorliegen. Überprüfe auch die Verbindungs- und Abfrageeinstellungen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige