A Power Query lekérdezések frissítési előzményeinek mentése

Szinte minden Power Query tréningen, amikor eljutunk a létrehozott lekérdezések frissítéséhez, és az emberek látják, hogy frissítéskor hogyan váltják fel új adatok a régi adatokat, az egyik hallgató megkérdezi tőlem: „lehet-e meggyőződni arról, hogy frissítéskor a régi adatok Valahol is el lettek mentve, és a teljes frissítési előzmény látható volt?

Az ötlet nem új, és a szokásos válasz „nem” lesz – a Power Query alapértelmezés szerint úgy van beállítva, hogy a régi adatokat újakra cserélje (amire az esetek túlnyomó többségében szükség van). Ha azonban igazán akarja, megkerülheti ezt a korlátozást. És a módszer, mint később látni fogja, nagyon egyszerű.

Tekintsük a következő példát.

Tegyük fel, hogy van egy fájlunk az ügyféltől bemeneti adatként (nevezzük, mondjuk, forrás) a megvásárolni kívánt termékek listájával egy „okos” dinamikus táblázat formájában. Alkalmazás :

A Power Query lekérdezések frissítési előzményeinek mentése

Egy másik fájlban (nevezzük hasonlatosan Receiver) egy egyszerű lekérdezést hozunk létre egy táblázat importálásához a Forrásból származó termékekkel Adatok – Adatok lekérése – Fájlból – Excel-munkafüzetből (Adatok — Adatok lekérése — Fájlból — Excel-munkafüzetből) és töltse fel a kapott táblázatot a lapra:

A Power Query lekérdezések frissítési előzményeinek mentése

Ha a jövőben az ügyfél úgy dönt, hogy módosítja az aktájában szereplő megrendelést forrás, majd kérésünk frissítése után (jobb gombbal vagy via Adatok – Összes frissítése) fogjuk látni az új adatokat a fájlban Receiver - minden szabvány.

Most ügyeljünk arra, hogy a frissítéskor ne a régi adatokat cseréljék ki újakra, hanem az újak kerüljenek a régiekhez – és egy dátum-idő hozzáadásával, hogy látható legyen, mikor történtek ezek a konkrét változások. készült.

1. lépés: Dátum-idő hozzáadása az eredeti lekérdezéshez

Nyissunk egy kérést Alkalmazás adataink importálása innen forrás, és adjon hozzá egy oszlopot a frissítés dátumával és időpontjával. Ehhez használhatja a gombot Egyéni oszlop lap Oszlop hozzáadása (Oszlop hozzáadása – Egyéni oszlop), majd adja meg a függvényt DateTime.LocalNow – a funkció analógja A TDATA (MOST) Microsoft Excelben:

A Power Query lekérdezések frissítési előzményeinek mentése

Miután rákattintott OK egy ilyen szép oszlopot kell kapnia (ne felejtse el beállítani a dátum-idő formátumot az oszlopfejlécben található ikonnal):

A Power Query lekérdezések frissítési előzményeinek mentése

Ha szeretné, akkor az ehhez az oszlophoz tartozó lapra feltöltött táblán beállíthatja a dátum-idő formátumot másodpercekkel a nagyobb pontosság érdekében (a szabványos formátumhoz kettőspontot és „ss”-t kell hozzáadnia):

A Power Query lekérdezések frissítési előzményeinek mentése

2. lépés: Régi adatok lekérdezése

Most hozzunk létre egy másik lekérdezést, amely pufferként működik, amely elmenti a régi adatokat a frissítés előtt. Az eredményül kapott táblázat bármelyik cellájának kijelölése a fájlban Receiver, válassza ki a lapon dátum parancs Táblázatból/Tartományból (Adatok – táblázatból/tartományból) or Levélekkel (lapról):

A Power Query lekérdezések frissítési előzményeinek mentése

A Power Queryben betöltött táblával nem csinálunk semmit, meghívjuk a lekérdezést pl. régi adatok és nyomja meg az Kezdőlap — Bezárás és betöltés — Bezárás és betöltés... — Csak kapcsolat létrehozása (Főoldal — Bezárás&Betöltés — Bezárás&Betöltés ide... — Csak kapcsolat létrehozása).

3. lépés: Régi és új adatok összekapcsolása

Most térjünk vissza az eredeti kérdésünkhöz Alkalmazás és alulról add hozzá az előző pufferkérés régi adatait a paranccsal Kezdőlap — Kérések hozzáadása (Főoldal – Lekérdezések hozzáfűzése):

A Power Query lekérdezések frissítési előzményeinek mentése

Ez minden!

Továbbra is vissza kell térnie az Excelhez Kezdőlap — Zárja be és töltse le (Főoldal – Bezárás és betöltés) és próbálja meg néhányszor frissíteni a teljes szerkezetünket a gombbal Az összes frissítése lap dátum (Adatok – Összes frissítése). Minden frissítésnél az új adatok nem cserélik le a régi adatokat, hanem alább kerülnek, megtartva a teljes frissítési előzményt:

A Power Query lekérdezések frissítési előzményeinek mentése

Hasonló trükk használható bármilyen külső forrásból (internetes oldalak, adatbázisok, külső fájlok stb.) történő importáláskor, hogy megőrizze a régi értékeket a történelem számára, ha szüksége van rá.

  • Kimutatástábla több adattartományban
  • Táblázatok összeállítása különböző fájlokból a Power Query segítségével
  • Adatgyűjtés a könyv összes lapjáról egy táblázatba

Hagy egy Válaszol