Porównanie plików Excela krok po kroku

Po wstępnej ocenie wielkości plików i dzięki odpowiedniemu programowi napisanemu w Visual Basicu porównanie plików excella, nawet bardzo dużych, nie będzie stanowiło dla nas problemu

Program Excel to część pakietu biurowego Microsoft Office. Ten wszechstronny arkusz kalkulacyjny jest niezwykle przydatnym narzędziem, zarówno w pracy jak i w domu. Może służyć zarówno do projektowania domowego budżetu, planu zajęć dziecka czy nawet liczyć obroty handlowe dużej firmy. Pliki generowane przez arkusz kalkulacyjny to obszerna tabela najczęściej pełna liczb i skomplikowanych wzorów. Dlatego też ręczne porównanie plików excela jest dosyć trudne i wymaga pewnej wprawy oraz odpowiednich narzędzi.

Porównanie wstępne
Pierwszym etapem porównania plików excela jest zgrubne oszacowanie, czy mogą one zawierać podobne treści, czy też są wygenerowane w zupełnie odmiennych celach i nie noszą najmniejszych cech podobieństwa. Najczęściej będą one miały rozszerzenie xls lub xlsx, w zależności od wersji programu Excel. Klikamy prawym przyciskiem myszy na plikach arkusza kalkulacyjnego i wybieramy opcję „właściwości”. Naszym oczom ukażą się szczegóły dokumentu, który porównujemy. Pierwszą rzeczą, którą powinniśmy sprawdzić, jest jego wielkość. Pliki znacznie różniące się rozmiarem, wyrażonym w bajtach, najprawdopodobniej od razu odrzucimy i nie będziemy ich dalej porównywali, gdyż najpewniej ich zawartość da się odróżnić bez większych problemów. Jeżeli jednak wielkość porównywanych plików jest zbliżona, a po otwarciu każdego z nich widzimy taką samą liczbę arkuszy musimy przystąpić do zaawansowanego porównania za pomocą odpowiedniego makra.

Porównanie zaawansowane
Visual Basic jest językiem programowania stanowiącym integralną część pakietu Office. Dzięki makrom, czyli niewielkim programom napisanym w tym języku nawet tak skomplikowana czynność jak porównanie plików excela zawierającego wiele tysięcy zapełnionych komórek nie będzie dużym problemem. Pierwszym etapem stworzenia makra jest utworzenie nowego arkusza kalkulacyjnego i uruchomienie w nim edytora Visual Basic. Następnie tworzymy nową formę – UserForm, na której umieszczamy trzy guziki – buttony. Dwa z nich będą otwierały porównywane pliki, trzeci zaś rozpocznie procedurę porównania. Aby otworzyć plik excela musimy zastosować procedurę Application.GetOpenFilename("Excel 2003 Pliki, *.xls,Excel 2007 Pliki, *.xlsx,Excel 2007 Pliki, *.xlsm"), której wartość przypisujemy do zmiennej na przykład plik1. Podobny kod stosujemy dla drugiego pliku. Sama procedura porównania odbywa się w pętli for – next, która krok po kroku porównuje każdą komórkę obu arkuszy. Najlepiej do tego celu wykorzystać metody col.count oraz rows.count, które zliczą ilość zapełnionych w arkuszu odpowiednio - kolumn i wierszy. Następnym krokiem powinno być zapisanie przez program nowego arkuszu, ze zmienionym kolorem tła komórek, których zawartość była różna dla obu porównywalnych plików. Należy do tego zastosować procedurę: Workbooks(plik1).SaveAs Filename:="ścieżka dostępu pliku", gdzie zamiast zawartości cudzysłowu wpisujemy odpowiednią ścieżkę, na przykład C:excel. Napisanie odpowiedniego makra wymaga pewnej wprawy, jednak bardzo ułatwia pracę z arkuszem kalkulacyjnym i porównanie plików excela.