Kategorie szkoleń | Egzaminy | Kontakt
  • 7
  • 2
  • 37
Zaloguj się aby zadać pytanie
Pokrewne

Odpowiedzi (7)

  • 0

Witam.

Rozwiązanie w załączniku.

Z poważaniem.
Łukasz.

Załączniki

  • xlsx

    Rozwiązanie - Query.xlsx ( 155K )
  • Odpowiedział
  • @ | 26.01.2017
  • TRENER ALTKOM AKADEMII
Komentarze
Dziękuję Panie Łukaszu, Pańskie rozwiązanie oczywiście działa poprawnie. Mam w takim razie pytanie dodatkowe:

Czy w PQ jest możliwość grupowania na zasadzie wybrania kolumny, którą chcemy pogrupować a następnie wybrania 3 parametrów:

- pierwszy przedział

- skok

- ostatni przedział
Skomentował : @ Michał_Leonarczyk ,26.01.2017
  • 2
  • 0
  • 5
  • 0

Panie Michale.

Poproszę o przykład, jaki ma być efekt końcowy i jaki jest efekt początkowy.

Pozdrawiam.
Łukasz.

  • Odpowiedział
  • @ | 26.01.2017
  • TRENER ALTKOM AKADEMII
Komentarze
Efekt jest dokładnie taki sam jaki uzyskał Pan stosując funkcję IF - przedstawione przez Pana rozwiązanie w 100% rozwiązało mój problem. Chciałbym trochę poszerzyć wiedzę z Power Query i zastanawiałem się, czy jest inny niż przedstawiony przez Pana sposób na grupowanie.
Skomentował : @ Michał_Leonarczyk ,26.01.2017
  • 2
  • 0
  • 5
  • 0

Witam.

Można byłoby zrobić to bez zastosowania Power Query np. za pomocą funkcji Wyszukaj.Pionowo.

Ale chyba nie o to chodziło.

Pozdrawiam.
Łukasz.

  • Odpowiedział
  • @ | 26.01.2017
  • TRENER ALTKOM AKADEMII
Komentarze
Nie nie, nie o to. Dziękuję za pomoc. Pozdrawiam.
Skomentował : @ Michał_Leonarczyk ,26.01.2017
  • 2
  • 0
  • 5
  • 0

Witam.

Kolega z pracy mnie sprowokował i wymyśliłem wersję numer 2 (automatyczną).

Kolega Krzysztof Rutkowski jeszcze pokaże inną wersję. Krzysiu należy się duża puszka napoju.

Pozdrawiam.
Łukasz.

Załączniki

  • xlsx

    Rozwiązanie - Query - Wersja ... ( 156K )
  • Odpowiedział
  • @ | 26.01.2017
  • TRENER ALTKOM AKADEMII
  • 7

Witam.

Wersja numer 3 - można wpisać wartość przedziału i Query sam je utworzy.

Pozdrawiam.
Łukasz.

Załączniki

  • xlsx

    Rozwiązanie - Query - Wersja ... ( 159K )
  • Odpowiedział
  • @ | 26.01.2017
  • TRENER ALTKOM AKADEMII
  • 8

Wypraszam sobie nikogo nie sprowokowałem.

Trochę za to posprzątałem.

Czyli jako osiągnąć ten efekt:

Budujemy tabelę i ją nazywamy tu nazwa Dane:

 

 

Dodajemy do Power Query (tu w akcji Excel 2016):

 

 

Dodajemy kolumnę niestandardową:

 

 

W języku M używanym w Power Query nie ma funkcji podobnej do Cailing i Floor (polskie nazwy zaokr.w.górę , zaokr.w.dół) które umożliwiłyby zaokrąglenie do krotności, ale są za to funkcje Number.RoundDown i Number.RoundUp niestety pracują na zaokrąglaniu wartości ułamkowych. Ale jak byśmy liczbę podzielili przez np. 100, to mamy ułamek. Z tym, że potem po zaokrągleniu potrzeba ją pomnożyć przez tą sama wartość

Dlatego funkcja, którą użyjemy do budowy kolumny niestandardowej ma postać:

 

 

Dodajemy drugą kolumnę:

 

 

Kolega użył kolejnej funkcji do złączenia ja zaproponuje tak:

Zaznaczamy obie kolumny:

 

Pod prawo klikiem myszy mamy menu z którego wybieramy Scal kolumny:

 

 

W oknie wybieramy Separator niestandardowy i minusik oraz nadajemy nazwę kolumnie:

 

Efekt:

 

Teraz trzeba przygotować parametryzację skoku.

Najpierw wchodzimy do edytora zaawansowanego naszego zapytania:

 

Zawartość:

 

Dodajemy modyfikację.

let
funkcjskok = (skok as number)=>

....

....

....

in
funkcjaskok

Funkcję nazwałem funkcjaskok, ale nazwa jest dowolna, tak samo jak nazwa jej argumentu.

Zamieniamy wszystkie wcześniej użyte wartości 100 na nazwę argumentu funkcji.

Po poprawkach powinno to wyglądać tak:

 

 

Po zatwierdzeniu pojawi się okno z prośbą o podanie wartości parametru:

 

 

Możemy przetestować:

 

 

Wynik:

 

Nasze zapytanie zamieniło się na formułę FX dane.

Wywołanie funkcji można usunąć. Generalnie chodzi teraz o to, aby był łatwiejszy automat zasilający parametr funkcji.

W arkuszu budujemy tabelę, nadajemy jej nazwę, ja moją nazwałem skok:

 

 

Dodajemy tabelę do Power Query:

 

 

Dodajemy kolumnę niestandardową:

 

 

Formuła w tabeli to:

 

Gdzie, #"dane" to wywołanie naszej formuły, którą zasilimy wartością z kolumny skok (uwaga na wielkości liter).

Efekt mamy taki:

 

Rozpakowujemy tabelę:

 

Wybieramy wszystkie kolumny, ale bez używania prefiksów:

 

Efekt:

 

Usuwamy kolumnę skok:

 

 

Zamknij załaduj:

 

 

Sprawdzamy czy działa, zmieniamy wartość w tabeli skok i odświeżamy tabelę załadowaną.

 

 

Załączniki

  • xlsx

    skok wartosci.xlsx ( 18K )
  • Odpowiedział
  • @ | 26.01.2017
  • TRENER ALTKOM AKADEMII
Komentarze
Zastanawiałem się, czy w ogóle istnieje możliwość grupowania, a tu pokazano kilka zupełnie innych możliwości rozwiązania tego problemu. Widzę, że muszę się jeszcze dużo nauczyć. O Power Query dowiedziałem się stosunkowo niedawno i z dnia na dzień widzę w nim coraz większy potencjał. Dziękuję Panom za świetną pracę. Pozdrawiam serdecznie.
Skomentował : @ Michał_Leonarczyk ,27.01.2017
  • 2
  • 0
  • 5
  • 0

ale czad!!! dzięki wielkie za inspiracje! :=)

Anna_Więcek_o6b4
  • Odpowiedział
  • @ Anna_Więcek_o6b4 | 02.12.2022
    • 0
    • 0
    • 0