Power Query „Quickies” Dateien eines Verzeichnisses

Quickie: Alle Dateien eines Verzeichnisses
in eine Liste/Tabelle


Hin­weis: Die Arbeitss­chritte dieses Beitrages sind in einem kleinen Video doku­men­tiert. Das unter­stützende Begleit-Video find­en Sie auf YouTube an dieser Stelle.


Mit VBA/Ma­kro gibt es ver­schiedene Möglichkeit­en, die Da­tei­en ei­nes Verze­ich­niss­es ‑mit oder ohne Unter­verze­ich­nisse- einzule­sen und in ein­er Lis­te oder Ta­bel­le aus­zu­ge­ben. In den meis­ten Fäl­len be­schränkt sich die dar­ge­stell­te Infor­ma­tion auf den Pfad und den File­na­men. Mit Pow­er Que­ry kön­nen Sie ohne eine Zei­le Code die­se Infor­ma­tio­nen so­wie ei­ni­ge Meta-Dat­en in ein Tabel­len­blatt über­tra­gen.

Das an­fäng­li­che Vorge­hen ist im­mer gle­ich:

  • Ak­ti­vie­ren Sie die Pow­er Que­ry Funk­tion­al­ität über den Me­nü­punkt gle­ichen Na­mens oder das Menü Dat­en.
  • Aus Da­tei | Aus Ord­ner
  • Ge­ben Sie im Dialogfen­ster entwed­er den Pfad der ober­sten Ebe­ne für die gewün­schte Date­naus­gabe an oder Klick­en Sie auf die Schalt­fläche Durch­suchen… um über den typ­is­chen Win­dows-Dia­log den Fold­er aus­zu­su­chen.

Nach kurz­er War­te­zeit öff­net sich ein Fen­ster wo die ers­ten Ein­träge aus Grün­den der Kon­trolle an­ge­zeigt wer­den. Da im End­ef­fekt nicht alle Spal­ten über­nom­men wer­den sol­len, ein Klick auf die Schalt­fläche Bear­beit­en. Da­nach öff­net sich der Abfrage-Edi­tor, wo dann auch erhe­blich mehr Zei­len an­ge­zeigt wer­den.

Mit Sicher­heit wer­den nicht alle Spal­ten für die An­zei­ge in der Ta­bel­le be­nö­tigt. Dazu ge­hört die ers­te Spal­te Con­tent. Ein Recht­sklick in die Über­schrift und im Kon­textmenü den zweit­en Ein­trag Ent­fer­nen aus­wäh­len. So­fort wird die­se Spal­te ge­löscht. Gle­ich­es Vorge­hen oder Links­klick in die Über­schrift der Spal­te Attrib­ut­es und dann Entf, auch die Spal­te wird nicht be­nö­tigt.

Prinzip­iell kön­nten Sie die­se Darstel­lung so wie sie ist über­neh­men. Aber was in man­chen Fäl­len ganz hil­fre­ich sein kann: In ein­er Zel­le soll­ten Pfad und Da­tei­na­me in der typ­is­chen Schreib­weise auf­ge­zeigt wer­den. Also beispiel­sweise C:\Win­dows\Ex­plo­rer.exe. Das lie­ße sich in ein­er ganz nor­malen Win­dows Ta­bel­le ganz ein­fach durch Ver­ket­ten() oder die Verknüp­fung mit dem & lö­sen. Aber es ist bess­er, Prob­leme an der Wur­zel zu pack­en. Und da bie­tet Pow­er Que­ry dur­chaus eine ein­fache Mög­lich­keit:

  • Mar­kie­ren Sie erforder­lichen­falls durch ei­nen Klick in die Über­schrift die Spal­te mit der Über­schrift Fold­er Path.
  • Wech­seln Sie in das Menü Spal­te hinzufü­gen
  • In der Grup­pe All­ge­mein auf den Me­nü­punkt Dop­pelte Spal­te Klick­en, die Spal­te wird umge­hend du­pli­ziert.
  • Gle­ich­es Vorge­hen bit­te bei der Spal­te Name, also auch die­se ver­dop­peln. Das Dup­likat wird als let­zte Spal­te, nicht di­rekt ne­ben der Ur­sprungs-Spal­te ange­fügt.

Die let­zten bei­den Spal­ten sind ja schon in der richti­gen Rei­hen­folge und enthal­ten auch die gewün­scht­en Infor­ma­tio­nen. Ei­gent­lich müs­sen jet­zt nur noch bei­de Spal­ten mar­kiert und zusam­menge­führt wer­den. Da die let­zte Spal­te schon mar­kiert ist brauch ei­gent­lich nur noch per Tas­te Shift oder Strg die Spal­te mit dem Pfad mar­kiert wer­den. „Ei­gent­lich ja” hei­ßt aber auch oft „ei­gent­lich nein”. Hier ist die Rei­hen­folge der Mar­kie­rung ex­trem wich­tig. Die Spal­te, die sie zu­erst mar­kie­ren wird bei der Zusam­men­fas­sung auch zu­erst dar­ge­stellt. Das be­deu­tet: Sie mar­kie­ren zu­erst die Spal­te mit dem Path und an­schlie­ßend die Spal­te mit dem Dateina­men. Da­nach wech­seln Sie in das Menü Trans­formieren, Grup­pe Be­lie­bi­ge Spal­te Aus­wahl Spal­ten zusam­men­führen.

Es öff­net sich ein Dialogfen­ster. Bei Trennze­ichen ist –Kein– vor­ge­ge­ben, das kann so blei­ben, weil die bei­den Spal­ten ja ohne ein tren­nen­des Zei­chen di­rekt aneinan­derge­hängt wer­den sol­len. Im darun­ter­liegen­den lee­ren Text­feld Neu­er Spal­tenname (option­al) ste­ht bere­its ein Spal­tenname: Zusam­menge­führt. Der kön­nte zwar so blei­ben, aber beispiel­sweise Full Path (oder ein entsprechen­der deutsch­er Name) ist doch viel aus­sagekräftiger. Dar­um gle­ich an die­ser Stel­le ent­spre­chend än­dern und an­schlie­ßend mit OK bestäti­gen..

Ei­gent­lich ist da­mit die Auf­gabe ge­löst. Als klei­nen Bon­bon wer­den sie jet­zt aus den vie­len Zei­len und Ein­trä­gen beispiel­sweise die wichtig­sten edi­tier­baren Files her­aus­fil­tern. Das sind Text­dateien, Files mit der En­dung *.txt*.xml als auch *.ini. Dazu Klick­en Sie in der Spal­te Exten­sion auf den Drop­down-Pfeil und wäh­len in der Auflis­tung un­ten nur die­se 3 Date­itypen aus. Nach ein­er Bestä­ti­gung mit dem OK-But­ton vielle­icht noch ei­nen Klick auf das Fil­ter­sym­bol der gle­ichen Spal­te, und die Ein­träge alpha­betisch auf­steigend sor­tie­ren las­sen.

Das war’s, die­se Quick­ie-Auf­gabe ist da­mit mehr als er­füllt. Sie wer­den im Nor­mal­fall die­se Ab­fra­ge noch um all jene Spal­ten bere­ini­gen, die sie in der Auflis­tung nicht brau­chen. Zum über­tra­gen in das Excel-Arbeits­blatt ein Klick auf das Menü Da­tei und das Ele­ment Schlie­ßen & la­den in anklick­en. Alter­na­tiv wäre auch ein Wech­sel zum Start-Me­nü und dort den entsprechen­den But­ton mög­lich gewe­sen. Nun noch statt des neu­en Arbeits­blatts Vorhan­denes Arbeits­blatt wäh­len und es bei der Posi­tion $A$1 im Text­feld dar­un­ter be­las­sen. Da­durch wird das Ergeb­nis der Ab­fra­ge in das ak­tu­el­le Blatt ge­schrie­ben. – Da noch al­les mar­kiert ist, der Op­tik we­gen die Tas­tenkom­bi­na­tion StrgPos1, dann sieht das gan­ze recht pos­i­tiv aus. 😉 

▲ nach oben …

Ref­er­ence: #4056

Dieser Beitrag wurde unter File-Handling, Filtern & Sortieren, Ohne Makro/VBA, Power Query, PQ-Quickies abgelegt und mit , , , , , , , , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.