Zadanie, dane i natchnienie:
(C) 2009 - Mariusz Jankowski (Dzięki!)
http://www.goldenline.pl/forum/excel-vba/1326580
Problem:
Do tej pory skupialiśmy się na pobieraniu danych z różnych
źródeł i wklejaniu ich w arkusz w formie małoprzetworzonej, poza
prostymi łączeniami tabel. Niekiedy jednak zachodzi konieczność
znacznego przetworzenia danych, nawet, gdy wynikiem ma być mała,
prosta tabela.
Zwykle robi się to poprzez napisanie skomplikowanego zapytania w
języku SQL, tzw. zagnieżdżonego SQL, czyli zapytania, które
najpierw buduje jakiś widok danych, a dopiero potem łączy go z
inną tabelą lub innym widokiem.
Działa, ale:
1. Trzeba mieć narzędzie, żeby to napisać. Zwykłe edytory SQL
nie oferują edycji zapytań zagnieżdżonych.
2. Trzeba umieć to napisać, a taki SQL może być bardzo
skomplikowany.
Wyjściem jest (wielo-)stopniowe przetwarzanie danych, ale to z
kolei oferują już tylko profesjonalne narzędzia DTS-owe (Data
Transforming Systems). Trzeba je mieć, umieć włączyć (nie takie
to czasami proste, serio), rozumieć, co te narzędzia do nas
mówią... ech, skomplikowane :(
Albo (filmik):
http://afin.net/webcasts/Demo_ProcessingDataMultistep.swf
Opis:
1. Dane są w dwóch arkuszach jednego pliku Excela. Pobieramy je
kwerendą, tworząc relację i, od razu, ranking (1.) zespołów
według średnich wzrostów zawodników.
Tworzy się tabela w bazie Accessowej 'MyTable'
2. Tworzymy kwerendę z tej tabeli tworząc inną tabelę - kolejny
ranking, tym razem ranking (2.) dywizji według maksymalnych
średnich zespołów.
Tworzy się kolejna tabela 'MyTable2'
3. Tworzymy kolejną kwerendę, łączącą dane rankingu 2. z
informacjami o zespołach, osiągających te średnie, czyli
łączymy ranking 2. z rankingiem 1.
Powstałą tabelę pobieramy do arkusza.
Raport tworzy się natychmiast jednym kliknięciem myszy.
Nie napisałem ręcznie nic.
środa, 2 grudnia 2009
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz