Podczas analizy danych wielokrotnie pojawia się problem ich obróbki. Zwłaszcza, jeśli dane wsadowe przygotowywane są przez różne działy. Analitycy danych najchętniej przyjmowaliby dane w formie bazodanowej, ale nie zawsze tak jest w praktyce. Niekiedy, zwłaszcza podczas współpracy z działami odpowiedzialnymi za marketing i reklamę kreatywność w zakresie "prezentacji" danych jest ogromna.
Przeanalizujmy kilka prostych przykładów, z jakimi możemy się spotkać w praktyce i spójrzmy, w jaki sposób visual basic może nam ułatwić pracę.
Jeśli otrzymamy tabelkę z datami obowiązywania np. akcji promocyjnych w formie jak na poniższym rysunku, wówczas chcielibyśmy mieć osobny rekord dla każdego kodu i pojedynczego dnia obowiązywania akcji.
Możemy wykorzystać poniższe makro. Wcześniej jednak tworzymy arkusz "akcje", który będzie arkuszem wynikowym. W arkuszu tym wstawiamy odpowiednie nagłówki i uruchamiamy makro.
W efekcie otrzymujemy pożądaną formę, która jest łatwiejsza do dalszej analizy i wizualizacji.
Inna forma danych wsadowych może wyglądać jak na poniższym rysunku. Naszym celem będzie zatem "depivotowanie" danych oraz usunięcie rekordów z pustymi wartościami.
Przed wykorzystaniem poniższego makra tworzymy arkusz "wynik".
Wcześniej pojawia się prośba o podanie liczby kolumn nie zawierających danych.
W efekcie również otrzymujemy pożądaną formę, która jest łatwiejsza do dalszej analizy i wizualizacji.
Wyobraźmy sobie jednak trudniejszy problem, gdzie dział odpowiedzialny za marketing przesłał nam harmonogram akcji w formie graficznej, jak na poniższym rysunku. Możemy oczywiście "bawić" się w uzupełnianie nazw w każdej "kolorowej" komórce. Jednak prościej będzie skorzystać z pomocy makra, które dla całego zakresu danych uzupełni odpowiednie pola.
Tworzymy arkusz wynikowy o nazwie: "wynik3" i uruchamiamy poniższe makro.
W efekcie otrzymujemy wypełnione komórki, które możemy "depivotować" jak we wcześniejszym przykładzie.