Start > CONT-EVO MAP > CONT-EVO MAP - Instrukcja on-line > CONT-EVO MAP - Budowa aplikacji w VBA > Przykłady

Przykłady

Wyróżnianie obiektów

Niniejszy przykład obrazuje, w jaki sposób wizualizacja może wyróżniać wybrane obiekty, np. osadzona w raporcie i sprzężona z innymi danymi.

W tym celu przygotowana została prosta wizualizacja oraz przykładowe (losowe dane - w kolumnach "E:G"). Wykorzystany został także formant listy, który podłączony jest do listy regionów i powoduje uruchomienie makra.

Przykładowe pliki do pobrania są w dwóch wersjach:

Pobierz plik zawierający omawiane przykłady,
który nie wymaga aplikacji CONT-EVO MAP dla działania, jednak kod jest zabezpieczony hasłem.

Pobierz plik zawierający omawiane przykłady,
który wymaga aplikacji CONT-EVO MAP w wersji komercyjnej i zdefiniowania referencji dla działania, jednak kod jest otwarty.

Rozpakuj archiwum, zanim rozpoczniesz pracę.
Wszystkie przykłady są omówione na bazie pliku, który potrzebuje referencji do komercyjnej wersji CONT-EVO MAP, w którym kod źródłowy jest dostępny i można z niego korzystać w dalszej pracy z tą wersją aplikacji.

Spójrzmy na arkusz nazwany "wyroznienie":

Na arkuszu mamy już przygotowaną mapę województw, przygotowane losowe dane oraz wstawiony formant formularza, do którego przypisane jest makro.
Przejdźmy do środowiska VBA przy użyciu klawiszy Lewy Alt + F11 i wyświetlmy zawartość modułu "wyroznienie":

Widoczne są w nim nastęujące procedury:
  • wyroznij_obiekt - powoduje wyświetlenie obiektu i oznaczenie go żółtym kolorem
  • zresetuj_wyroznienie - resetuje mapę, ukrywając obiekty i pozostawiając tylko mapę Polski

Czynności kolejno wykonywane przez aplikację zostały odpowiednio skomentowane w kodzie (jest to zielony tekst poprzedzony apostrofem).
W kolejnych liniach kodu mamy zaprezentowane w działaniu standardowe polecenia języka VBA dla Excel oraz wybranych funkcji VBA dostępnych w komercyjnej wersji CONT-EVO MAP, które omówione są w tym miejscu.

Działanie aplikacji sprowadza się do przejścia przez listę obiektów, porównania jej z komórką "B20" (która jest połączona z formantem odpowiednią formułą) i w przypadku napotkania zgodnej odpowiedniego wyróżnienia regionu na mapie.
Każda interakcja z aplikacją jest poprzedzona poleceniem CEM.cont_evo_map_before_edit_map
oraz zakończona poleceniem CEM.cont_evo_map_after_edit_map, które odpowiednio przygotowują mapę do edycji oraz kończą tryb edycji.

Wszelkie operacje na mapie powinny rozpoczynać i kończyć się użyciem tych właśnie poleceń.

Przejdźmy do sprawdzenia działania makra z osadzoną mapą. Po wybraniu któregokolwiek regionu z listy rozwijanej obiekt ten zostanie uwidoczniony na mapie, a dodatkowo zostanie dodana etykieta z nazwą:

Naciśnięcie przycisku "Resetuj" powoduje usunięcie wyróżnienia.

Operacje na osadzonych w aplikacji obiektach są możliwe, jeśli znamy zasady nazewnictwa i okresleń typów obiektów. Poszczególne typy obiektów mają następujące zasady tworzenia swoich nazw:
  • obiekt (typ: taki sam jak w opisie typu obiektu, czyli np. "województwo") - id obiektu z arkusza i "_obj" - czyli np. województwo dolnośląskie ma id="terc_02" - obiekt je prezentujący będzie miał więc nazwę "terc_02_obj"
  • etykieta z nazwą regionu (typ: "name label") - id obiektu z arkusza i "_name_l" - obiekt ją prezentujący będzie miał więc nazwę "terc_02_name_l"
  • etykieta liczbowa (typ: "number label") - id obiektu z arkusza i "_nl" - obiekt ją prezentujący będzie miał więc nazwę "terc_02_nl"
  • etykieta opisowa (typ: "defined label") - id obiektu z arkusza i "_dl" - obiekt ją prezentujący będzie miał więc nazwę "terc_02_dl"
  • wykres przypisany do obiektu (typ: "chart") - id obiektu z arkusza i "_ch" - obiekt go prezentujący będzie miał więc nazwę "terc_02_ch"
  • pozycja legendy (typ: "colors legend item") - określenie "number_legend_" i kolejny numer
Proszę zwrócić uwagę, iż w naszym przykładzie, podczas przechodzenia pętlą przez obiekty wykorzystujemy id obiektów i rozszerzamy je o "_obj" - dzięki temu możemy dokonywać operacji na nich: