Przygotowanie aplikacji dedykowanej baz danych na zamówienie w Excelu wymaga przede wszystkim uporządkowania i walidacji danych na etapie wprowadzania ich przez użytkowników końcowych. Zależy nam zwykle na zapisie danych do uporządkowanej struktury - tabeli, którą będziemy później mogli przeszukiwać za pomocą narzędzi do budowy kwerend, poprzez funkcje Excela, kod VBA, biblioteki ADO/DAO i język SQL.

Realizując zlecenie, możemy oczywiście skorzystać z wbudowanych w arkusz mechanizmów sprawdzania danych (elementy menu dostępne na wstążce Dane/Narzędzia danych/Poprawność danych). Jednak z uwagi na konieczność zabezpieczenia programu od strony jego modyfikacji przez użytkownika końcowego, lepszym rozwiązaniem może okazać się interfejs w postaci formularzy oprogramowanych w języku VBA. Takie rozwiązanie pozwala nam nawet na całkowite ukrycie arkuszy z danymi i pełną obsługę wprowadzania, odczytu i prezentacji danych wyłącznie poprzez przygotowane okna. Wykonany program nie będzie przypominał nawet skoroszytu Excel, a samodzielną aplikację bazy danych z własnym interfejsem (menu Excela zostanie ukryte), wbudowanymi zestawieniami, raportami, analizami i wydrukami. Największą zaletą takiego podejścia będzie też możliwość „przeniesienia” w przyszłości samej bazy danych programu czy to do pliku bazy Access, czy nawet na serwer SQL i umożliwienie równoczesnej pracy na większej ilości danych kilku użytkownikom. Istotne, że modyfikując później głównie kod programu VBA, możemy pozostawić bez zmian budowany nieraz wiele miesięcy interfejs aplikacji, do którego użytkownicy są już często przyzwyczajeni.

Możliwe również jest wykonanie aplikacji Excel VBA, której dane przechowywane będą w odrębnym pliku, np. w formacie bazy Access. Rozwiązanie takie znacznie przyspiesza analizę i generowanie zestawień, uodparnia program na uszkodzenia danych oraz umożliwia ich współdzielenie przez wielu użytkowników w sposób znacznie bardziej efektywny, niż proste udostępnienie skoroszytu. Ponadto uruchomienie takiego projektu nie wymaga instalacji żadnych dodatkowych elementów czy bibliotek na stanowisku klienta - korzysta z zasobów Excela, pakietu Office i Windows.

 

przyklad-menu.jpg

(ENG version) Excel VBA solutions