Formanty i kod VBA w wizualizacji danych
Same liczby w raportach już dawno przestały wystarczać. Do raportów musimy dodawać wizualizacje – najczęściej są to wykresy. Te z kolei muszą być dynamiczne. Muszą się zmieniać i dostosowywać, np. przez filtrowanie danych za pomocą fragmentatorów. W tym artykule opiszemy dwa przykłady, w których będziemy zmieniać wizualizacje i wyróżniać najważniejsze dla nas dane za pomocą formantów z karty Deweloper.
Pokazywanie wybranych serii danych na wykresie
Zaczniemy od prostego wykresu z dwoma checkboxami (formantu), które umożliwiają usuwanie konkretnej serii danych z wykresu (Rysunek 1).
W podobnych przykładach najważniejsze jest odpowiednie przygotowanie danych. Zaczynamy od przykładowych źródłowych danych pokazujących sprzedaż w okresie dwóch lat (Rysunek 2).
Zależy nam na uzyskaniu takiego efektu, żeby przez zaznaczanie checkboxa (formantu) odpowiednio pokazywać na wykresie serię odpowiedzialną za konkretny rok (powiązany z danym checkboxem). Żeby uzyskać taki efekt, potrzebujemy stworzyć formuły, które będą powiązane ze stanem checkboxów, czyli pierwszym naszym krokiem będzie wstawienie checkboxów (pól wyboru). Możemy to zrobić z karty Deweloper, rozwijając polecenie Wstaw i wybierając pole wyboru z sekcji Kontrolki formularza (formanty) (Rysunek 3).
Uwaga! Formanty z sekcji Kontrolki formularza nie obsługują eventów VBA, w przeciwieństwie do kontrolek ActiveX.
Przy wstawionym checkboksie nie potrzebujemy żadnego tekstu (będzie on wyświetlany w legendzie wykresu), dlatego usuwamy go i zmniejszamy obszar pola wyboru tylko do kwadracika do zaznaczania, a następnie go kopiujemy, bo potrzebujemy dwóch checkboxów.
Mamy już przygotowane miejsce na przekształcone dane (Rysunek 4). Chcemy, żeby informacja o tym, czy checkbox jest zaznaczony, czy nie, znalazła się odpowiednio w komórkach F1 i G1.
Żeby połączyć dane checkboxa (formantu) z komórką Excela, musimy kliknąć na niego prawym przyciskiem myszy i w podręcznym menu wybrać opcję Formatuj formant (Rysunek 5).
Otworzy się okno formatowania pola wyboru, gdzie na zakładce Kontrolka musimy ustawić łącze do komórki ($F$1) (Rysunek 6). Na tej zakładce widać też aktualny stan pola wyboru – czy jest zaznaczony, czy nie. Trzeci stan, mieszany, nie jest możliwy do uzyskania przez klikanie w pole wyboru, więc się nim nie interesujemy.
Wartość w połączonej komórce zmieni się po pierwszej zmianie stanu pola wyboru. Jeśli pole wyboru będzie zaznaczone, to w połączonej komórce będzie wpisana wartość logiczna PRAWDA, a gdy będzie odznaczone, to w połączonej komórce pojawi się wartość logiczna FAŁSZ.
Analogicznie drugi checkbox potrzebujemy połączyć z komórką $G$1. Gdy już mamy połączone checkboxy z komórkami, możemy napisać odpowiednią formułę: =JEŻELI(F$1;B3;BRAK()) (Rysunek 7), która będzie wyświetlać dane źródłowe, gdy checkbox jest zaznaczony (w odpowiedniej komórce jest wartość logiczna PRAWDA), a błąd – funkcja BRAK(), gdy checkbox będzie odznaczony.
Wykorzystałeś swój limit bezpłatnych treści
Pozostałe 73% artykułu dostępne jest dla zalogowanych użytkowników portalu. Zaloguj się, wybierz plan abonamentowy albo kup dostęp do artykułu/dokumentu.