Dodatek Power Query jest dość potężny. Ale mam zamiar zrobić dodatek Power Query Squared… piszę zapytanie dla jednej strony, a następnie program Excel wykona to samo zapytanie dla całej listy stron internetowych.
Obejrzyj wideo
- Dzisiejsza sztuczka jest zaczerpnięta z książki M jak Data Monkey
- Utwórz zapytanie, aby uzyskać dane z jednej strony internetowej
- Edytuj zapytanie, aby zmienić je w funkcję z (VariableName) => przed Let
- Zmień zakodowany adres URL na VariableName
- Zmień nazwę zapytania na fxWeather
- Zamknij i wczytaj. Dane znikną.
- Użyj oszustwa programu Excel, aby utworzyć tabelę wszystkich adresów URL
- Utwórz zapytanie z tej tabeli.
- Dodaj nową kolumnę pogody
=fxWeather((URL))
- Rozwiń kolumnę. Odznacz prefiks
- Niesamowity!
Transkrypcja wideo
Naucz się programu Excel z podcastu, odcinek 2056: Power Query Squared
Hej, witaj z powrotem w netcastie, jestem Bill Jelen. Natknąłem się na tę sztuczkę, przygotowując się do seminarium na konferencji w Dallas pod tytułem Excelapalooza, najwspanialsza nazwa konferencji programu Excel w historii. Powinieneś to sprawdzić każdego września w Dallas.
I chwała Kenowi Pulsowi i Miguelowi Escobarowi, ponieważ musiałem spędzić godzinę na zapytaniu o moc, więc oczywiście wyciągnąłem tam niesamowitą książkę, największą na świecie książkę o Power Query. Przeglądałem książkę i zobaczyłem, że mają jedną technikę i powiedziałem: „Poczekaj chwilę. Zobaczę, czy uda mi się dostosować tę technikę ”. A to jest dla mnie niesamowite w zapytaniach o moc. I oto, co zamierzamy zrobić, weźmiemy jedno zapytanie uzupełniające, a następnie uruchomimy to zapytanie, to zapytanie, dziesiątki razy, dobrze?
Tak więc przykład, który wymyśliłem, był taki, w którym chciałem pobrać dane ze strony internetowej, w porządku. I wyszedłem - po prostu szukałem stron internetowych, które mogłem - których mógłbym użyć jako przykładu. Skończyłem na Weather Underground i oto adres URL, i widać, że byłem w Dallas-Fort Worth, więc pobieramy dane dla Dallas i wygląda na to, że 2 stycznia 2015 r. A więc w adresie URL są parametry , dobrze? A to jest adres URL, który jest gotowy do działania.
Rzucimy okiem na stronę internetową, chociaż nie jest to takie ważne. Widzisz, na stronie internetowej jest wiele różnych danych i zdecydowałem, że po prostu spróbuję uzyskać opady oraz wysoką i niską temperaturę. A oto pytanie. Pozwólcie, że powiem wam tutaj, że ten podcast nie dotyczy tego, jak utworzyć to zapytanie, nowe zapytanie, z innych źródeł, z Internetu, określić adres URL, a następnie kilka kroków, których nie zamierzam tutaj szczegółowo opisywać, aby uzyskać mój ostateczna odpowiedź Max Temp, Min Temp i opad. Chodzi o to, że masz zamiar wziąć własne zapytanie i sprawić, by działało w kilku przypadkach.
Więc klikam Zamknij i wczytaj i to zapytanie działa, zwraca mój jeden wiersz. Wszystko jest wspaniałe. Wrócę, zamierzam edytować to zapytanie i przejdę do widoku, edytora zaawansowanego. Mam zamiar przyjąć to zapytanie i sprawię, że będzie to funkcja, dobrze? Więc tutaj, przed słowem LET, naciskam Enter. W nawiasach podam zmienną (MyURL), a następnie => mała strzałka, dobrze? Fajne. A potem tutaj, gdzie mają adres URL w cudzysłowie, chcę pozbyć się całego adresu URL, w tym cudzysłowów, a następnie wpisać nazwę mojej zmiennej MyURL, w porządku. Więc mówimy, że przekażemy go do adresu URL i wykona to samo zapytanie, ale z jakimkolwiek adresem URL, który zdarzy się przekazać.
A teraz kilka niepokojących rzeczy, kiedy klikam Gotowe, oh ludzie! Wszystkie zastosowane kroki zniknęły i chcą, żebym wprowadził parametr. Po prostu zignoruj to wszystko. Zmienimy to nazwę; nazwiemy to fxWeather. FX, oczywiście, jest skrótem od funkcji i musisz naprawdę zapamiętać tę nazwę i pamiętać, które litery są duże, to będzie bardzo ważne za kilka minut. Home, Close & Load i BAM! Wszystko przepadło. O nie! Ale to dobrze. W porządku, więc wiemy, że tam jest. To tylko połączenie. Teraz przyjdę tutaj i to jest po prostu stary Excel, dobrze? Oto adres URL, wyłamałem go na pierwszą część adresu URL, końcową część adresu URL. Wiem, że muszę umówić się na randkę; Muszę sformatować to w tym dziwnym formacie roku,miesiąc i dzień, więc użyłem do tego funkcji TEKST. Wpisz tutaj datę początkową. Mogę nawet zmienić lotnisko, więc teraz jeżdżę tam iz powrotem. Zróbmy MCO dla Orlando i zróbmy kilka ostatnich danych. Więc zacznę od 01.10.2016, dobrze. Więc teraz mamy tu ustawiony ten wspaniały mały stolik. A tak przy okazji, to musi być stół. Musisz użyć formatu jako tabeli lub Ctrl + T. Więc wiesz, to po prostu chwytanie tej daty, a następnie + 1 + 1 + 1. Formatuję, buduję adres URL.Musisz użyć formatu jako tabeli lub Ctrl + T. Więc wiesz, to po prostu chwytanie tej daty, a następnie + 1 + 1 + 1. Formatuję, buduję adres URL.Musisz użyć formatu jako tabeli lub Ctrl + T. Więc wiesz, to po prostu chwytanie tej daty, a następnie + 1 + 1 + 1. Formatuję, buduję adres URL.
W porządku, teraz utworzymy zapytanie z tej tabeli. W porządku, oto moje informacje. Zamierzam dodać nową kolumnę, dodać kolumnę niestandardową, kolumny miały nazywać się Pogoda, a formuła będzie wyglądała na = fxWeather. Upewnij się, że jest to dokładnie ta sama wielkość liter, wielkie i małe litery, a wstawimy to pole o nazwie URL w ten sposób, zamykając nawias. Brak błędów składniowych, kliknij OK. Chcą wiedzieć o prywatności tutaj, to wszystkie dane publiczne, kliknij Zapisz, w porządku. Więc jest nasza randka. To zabawne, że faktycznie zmienili mój format na coś, co nie wygląda na to, od czego zacząłem. A potem pogoda z symbolem rozwinięcia. Więc kliknę symbol rozwinięcia, odznacz pole Użyj oryginalnej nazwy kolumny jako prefiksu. Chcę maksimum, minimum, opadów,Kliknij OK. W porządku, a teraz potrzebuję tylko daty i tych informacji. Więc kliknę prawym przyciskiem myszy i usunę tę kolumnę, kliknę prawym przyciskiem myszy i usunę tę kolumnę. Tutaj, nie potrzebuję tego czasu, więc powiem, że to tylko randka, w porządku. I zobacz, co robi na każdej randce, kiedy ją mijam; zwraca wysokie, niskie i opady w Orlando. Każdy wiersz prowadzi do innej strony internetowej. Wyobraź sobie, że gdyby nie 15 rzędów, ale 5000 rzędów, skonfigurowałbyś je do pracy w nocy. Kiedyś pisałem do tego makra. W rzeczywistości jedna ze stron internetowych dotyczy tego, jak zbudować makro do pobierania stron internetowych z tysiąca różnych stron w witrynie, co nie jest już konieczne w przypadku Power Querend.ll kliknij prawym przyciskiem myszy i usuń tę kolumnę, kliknij prawym przyciskiem myszy i usuń tę kolumnę. Tutaj, nie potrzebuję tego czasu, więc powiem, że to tylko randka, w porządku. I zobacz, co robi na każdej randce, kiedy ją mijam; zwraca wysokie, niskie i opady w Orlando. Każdy wiersz prowadzi do innej strony internetowej. Wyobraź sobie, że gdyby nie 15 rzędów, ale 5000 rzędów, skonfigurowałbyś go do pracy w nocy. Kiedyś pisałem do tego makra. W rzeczywistości jedna ze stron internetowych dotyczy tego, jak zbudować makro do pobierania stron internetowych z tysiąca różnych stron w witrynie, co nie jest już konieczne w przypadku Power Querend.ll kliknij prawym przyciskiem myszy i usuń tę kolumnę, kliknij prawym przyciskiem myszy i usuń tę kolumnę. Tutaj, nie potrzebuję tego czasu, więc powiem, że to tylko randka, w porządku. I zobacz, co robi na każdej randce, kiedy ją mijam; zwraca wysokie, niskie i opady w Orlando. Każdy wiersz prowadzi do innej strony internetowej. Wyobraź sobie, że gdyby nie 15 rzędów, ale 5000 rzędów, skonfigurowałbyś je do pracy w nocy. Kiedyś pisałem do tego makra. W rzeczywistości jedna ze stron internetowych dotyczy tego, jak zbudować makro do pobierania stron internetowych z tysiąca różnych stron w witrynie, co nie jest już konieczne w przypadku Power Querend.s zwraca wysokie, niskie i opady w Orlando. Każdy wiersz prowadzi do innej strony internetowej. Wyobraź sobie, że gdyby nie 15 rzędów, ale 5000 rzędów, skonfigurowałbyś go do pracy w nocy. Kiedyś pisałem do tego makra. W rzeczywistości jedna ze stron internetowych dotyczy tego, jak zbudować makro do pobierania stron internetowych z tysiąca różnych stron w witrynie, co nie jest już konieczne w przypadku Power Querend.s zwraca wysokie, niskie i opady w Orlando. Każdy wiersz prowadzi do innej strony internetowej. Wyobraź sobie, że gdyby nie 15 rzędów, ale 5000 rzędów, skonfigurowałbyś je do pracy w nocy. Kiedyś pisałem do tego makra. W rzeczywistości jedna ze stron internetowych dotyczy tego, jak zbudować makro do pobierania stron internetowych z tysiąca różnych stron w witrynie, co nie jest już konieczne w przypadku Power Querend.
Now, when I Close & Load, it's funny the preview here is showing me all the results. When I Close & Load, they're actually going to go do each query. And so right now we have preview rows loaded and it will take a good long time for this information to get updated. So, go to lunch, do something especially if you're doing more than 15 rows. And it's funny the preview is correct but they're still going out and could chunk, could chunk, could chunking through each individual row.
And there it's loaded. Is this amazing or what? Hey, I do a lot of Excel seminars, the Power Excel seminar in Orlando, Florida. Look at these beautiful temperatures we have down here on November 4, 2016. My afternoon will be all about Power Query, Power BI, Power Pivot, Power Map. So, I'm going to invite you down to Orlando to check out this seminar. There'll be a link there in the top-right hand corner.
Alright, so recap. Today's trick is from this book, M is for (DATA) MONKEY. We built a query to get one web page and then edit that query to change it into a function. So right before the Let statement variable name => and then change the hard-coded URL to whatever that variable name is. Rename the query to fxWeather, Close & Load, the data disappears. Then, we use some sort of Excel trickery to create a table of all the URLs we want to crawl, create a query from that table. This has to be a Ctrl+T table, add a new column of Weather = fxWeather and again it has to match the case there, (URL), Expand that column, uncheck Prefix. BAM! It is amazing.
Thanks to Ken and Miguel for writing this book. Thanks to you for stopping by. Hope to see you in Orlando on November 4th 2016. See you next time for another netcast from.
Download File
Pobierz przykładowy plik tutaj: Podcast2056.xlsm