Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

Formuléierung vum Problem

Mir hunn e puer Dateien (an eisem Beispill - 4 Stécker, am allgemenge Fall - sou vill wéi Dir wëllt) an engem Dossier Rapporten:

Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

Bannen kucken dës Dateien esou aus:

Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

Wou:

  • Den Dateblat, dee mir brauchen, gëtt ëmmer genannt Fotoen, awer kann iwwerall am Aarbechtsbuch sinn.
  • Doriwwer eraus de Blat Fotoen All Buch kann aner Blieder hunn.
  • Dëscher mat Daten hunn eng aner Zuel vu Reihen a kënne mat enger anerer Zeil op der Aarbechtsblat ufänken.
  • D'Nimm vun deene selwechte Kolonnen a verschiddenen Dëscher kënnen ënnerschiddlech sinn (zum Beispill, Quantitéit = Quantitéit = Quantitéit).
  • Kolonnen an Dëscher kënnen an enger anerer Uerdnung arrangéiert ginn.

Aufgab: Sammelt Verkafsdaten aus all Dateie vum Blat Fotoen an eng gemeinsam Tabell fir duerno e Resumé oder all aner Analysen drop ze bauen.

Schrëtt 1. Preparéieren engem Verzeechnes vun Kolonn Nimm

Déi éischt Saach ze maachen ass e Referenzbuch ze preparéieren mat all méiglech Optiounen fir Spaltennimm an hir korrekt Interpretatioun:

Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

Mir konvertéieren dës Lëscht an eng dynamesch "Smart" Tabelle mam Format als Dësch Knäppchen op der Tab Home (Home - Format als Table) oder Tastatur Ofkiirzung Ctrl+T a lued et an Power Query mam Kommando Donnéeën - Vun Table / Range (Daten - Vun Table / Range). An de leschte Versioune vun Excel ass et ëmbenannt ginn Mat Blieder (vum Blat).

An der Power Query Query Editor Fënster läsche mir traditionell de Schrëtt Geännert Typ a füügt en neie Schrëtt anstatt et un andeems Dir op de Knäppchen klickt fxan der Formelbar (wann et net sichtbar ass, da kënnt Dir et op der Tab aktivéieren iwwerpréiwen) a gitt d'Formel do an der agebauter Power Query Sprooch M:

=Table.ToRows(Source)

Dëse Kommando konvertéiert deen deen am virege Schrëtt gelueden ass Source Referenztabellen an eng Lëscht, déi aus nestéierte Lëschte (Lëscht) besteet, jidderee vun deenen, am Tour, e Paar vu Wäerter ass Et war - gouf vun enger Zeil:

Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

Mir brauchen dës Zort vun Daten e bësse méi spéit, wann Mass ëmbenennen Header vun all gelueden Dëscher.

Nodeems Dir d'Konversioun ofgeschloss hutt, wielt d'Befehle Home - Zoumaachen a Lueden - Zoumaachen a Lueden an ... an Typ vun Import Schafen einfach eng Verbindung (Home — Zoumaachen&Lueden — Zoumaachen&Lueden op... — Nëmme Verbindung erstellen) a gitt zréck op Excel.

Schrëtt 2. Mir lued alles aus all Fichier wéi ass

Loosst eis elo den Inhalt vun all eise Dateien aus dem Dossier lueden - fir de Moment, sou wéi et ass. Wiel vun Équipen Daten - Kritt Daten - Vun Datei - Vum Dossier (Daten - Kritt Daten - Vun Datei - Aus Dossier) an dann den Dossier wou eis Quellbicher sinn.

An der Virschaufenster klickt Konvertéieren (Transforméieren) or änneren (Ännerung):

Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

An dann den Inhalt vun all erofgeluede Fichieren expandéieren (Binär) Knäppchen mat duebel Pfeile an der Kolonn Rubrik Inhalt:

Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

Power Query op d'Beispill vun der éischter Datei (Vostok.xlsx) freet eis den Numm vum Blat, dee mir aus all Aarbechtsbuch wëllen huelen - wielt Fotoen an dréckt OK:

Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

Duerno (tatsächlech) wäerten e puer Eventer geschéien, déi dem Benotzer net offensichtlech sinn, d'Konsequenze vun deenen kloer an der lénker Panel ze gesinn sinn:

Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

  1. Power Query hëlt déi éischt Datei aus dem Dossier (mir wäerten et hunn Vostok.xlsx — gesinn Fichier Beispill) als Beispill an importéiert säin Inhalt andeems Dir eng Ufro erstellt Konvertéieren Probe Datei. Dës Ufro wäert e puer einfache Schrëtt hunn wéi Source (Datei Zougang) Navigatioun (Blattauswiel) a méiglecherweis d'Titelen erhéijen. Dës Ufro kann nëmmen Daten aus enger spezifescher Datei lueden Vostok.xlsx.
  2. Baséierend op dëser Ufro gëtt d'Funktioun déi domat verbonnen ass erstallt Convertéieren Datei (mat enger charakteristescher Ikon uginn fx), wou d'Quelldatei net méi e konstante wäert sinn, awer e verännerleche Wäert - e Parameter. Also kann dës Funktioun Daten aus all Buch extrahéieren, dat mir als Argument an et rutschen.
  3. D'Funktioun gëtt ofwiesselnd op all Datei (Binär) aus der Kolonn applizéiert Inhalt - Schrëtt ass responsabel fir dës Call Benotzerdefinéiert Funktioun an eiser Ufro déi eng Kolonn op d'Lëscht vun de Dateien bäidréit Convertéieren Datei mat Import Resultater vun all Aarbechtsbuch:

    Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

  4. Extra Kolonnen ginn ewechgeholl.
  5. Den Inhalt vun nestet Dëscher gëtt erweidert (Schrëtt Verlängert Dësch Kolonn) - a mir gesinn d'Finale Resultater vun der Datesammlung aus alle Bicher:

    Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

Schrëtt 3. Sanding

De fréiere Screenshot weist kloer datt déi direkt Versammlung "wéi ass" vu schlechter Qualitéit erausgestallt gouf:

  • D'Saile sinn ëmgedréint.
  • Vill extra Linnen (eidel an net nëmmen).
  • Table Header ginn net als Header ugesinn a gi mat Daten gemëscht.

Dir kënnt all dës Probleemer ganz einfach fixéieren - just d'Konvertéieren Sample Datei Ufro unzepassen. All Upassungen, déi mir derzou maachen, falen automatesch an déi assoziéiert Datei Konvertéierungsfunktioun, dat heescht datt se spéider benotzt gi wann Dir Daten aus all Datei importéiert.

Andeems Dir eng Demande opmaacht Konvertéieren Probe Datei, füügt Schrëtt un fir onnéideg Reihen ze filteren (zum Beispill no Kolonn Column2) an d'Rubriken mam Knäppchen erop Benotzt déi éischt Zeil als Header (Benotzt déi éischt Zeil als Header). Den Dësch wäert vill besser kucken.

Fir datt Spalten aus verschiddene Fichieren spéider automatesch ënnerenee passen, mussen se d'selwecht genannt ginn. Dir kënnt esou eng Mass ëmbenennen no engem virdrun erstallt Verzeechnes mat enger Zeil vun M-Code Leeschtunge. Loosst eis de Knäppchen erëm drécken fx an der Formelbar a füügt eng Funktioun fir ze änneren:

= Table.RenameColumns(#"Elevated Headers", Headers, MissingField.Ignore)

Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

Dës Funktioun hëlt den Dësch aus dem virege Schrëtt Erhiewt Header an ëmbenannt all Spalten an et no der nestéierter Lookup Lëscht Headlines. Drëtt Argument MissingField.Ignoréieren ass néideg fir datt op deene Rubriken déi am Verzeechnes sinn, awer net an der Tabell sinn, kee Feeler geschitt.

Eigentlech ass dat alles.

Zréck op d'Ufro Rapporten mir wäerten eng komplett aner Bild gesinn - vill méi schéin wéi déi virdrun:

Bauen Dëscher mat verschiddenen Header aus verschidde Bicher

  • Wat ass Power Query, Power Pivot, Power BI a firwat en Excel Benotzer se brauch
  • Sammelt Daten aus all Dateien an engem bestëmmten Dossier
  • Sammelen Daten aus all Blieder vum Buch an een Dësch

 

Hannerlooss eng Äntwert