Analiza danych · Usługi programistyczne

Cyfrowa neurochirurgia w Excelu

Firma z kluczowym systemem Excel/VBA · IT / ewidencja danych

Makra w Excelu - projekt ewidencja.

Wyzwanie

Każdy w IT zna takie systemy. Działają od lat, są kluczowe dla firmy, a w środku przypominają mechanizm szwajcarskiego zegarka – każda komórka, formuła i makro połączone siecią tysięcy zależności. Wszyscy wiedzą, że działają, ale nikt nie ma odwagi ich tknąć, bo jeden fałszywy ruch może zniszczyć wszystko.

I wtedy przychodzi klient z pozornie prostym zadaniem: „Proszę rozbudować ten system. Chcemy dodać 1100 nowych pól do istniejących 400.” To był system ewidencji pojazdów na Excelu i VBA – ponad 60 plików, każdy po 50 arkuszy i setki unikalnych odwołań. Operacja na otwartym sercu, bez naruszania rytmu.

Co zrobiłam

W takich projektach rewolucja to prosta droga do katastrofy – postawiłam na ewolucję. Zamiast ruszać istniejący kod, pisałam nowe makra wspierające rozbudowę. Zamiast ręcznie zmieniać tysiące formuł, zbudowałam mechanizm generujący nowe odwołania tylko dla dodawanych pól – stary system został nietknięty.

Część pracy była mozolna i powtarzalna, jak tworzenie dziesiątek nowych plików. Tu weszła automatyzacja – małe, sprytne automaty w VBA robiły żmudną robotę za mnie, minimalizując ryzyko błędu:

' Prosty automat, który generował dla mnie 35 nowych plików,
' tworząc idealną kopię z nowym numerem seryjnym.
Sub Utworz26_60()
    For numer = 26 To 60
        Set staryPlik = Workbooks.Open(sciezkaFolderu & "Plik_danych-" & (numer - 1) & ".xlsm")
        staryPlik.SaveCopyAs sciezkaFolderu & "Plik_danych-" & numer & ".xlsm"
        Set nowyPlik = Workbooks.Open(sciezkaFolderu & "Plik danych-" & numer & ".xlsm")
        nowyPlik.Sheets("Nr Karty").Range("A5").Value = "Plik_danych-" & numer
    Next numer
End Sub

Każda zmiana wdrażana iteracyjnie, testowana, zabezpieczana kopią. Powolna, precyzyjna praca – ale tylko ona gwarantowała bezpieczeństwo całości.

Efekt

Pacjent przeżył i ma się świetnie. Liczby mówią same za siebie:

  • System większy o 73% – z 400 do 1500 pól
  • 98% procesów rozbudowy zautomatyzowanych
  • 100% zachowanej kompatybilności – stary system działał jak przedtem, nieświadomy swojej nowej mocy

Nawet najbardziej „nietykalne” systemy da się rozwijać. Klucz to nie brawura, ale szacunek do istniejącej architektury i ostrożność, która pozwala dodać nowe, zachowując duszę oryginału.

Wróć do realizacji

Masz projekt do omówienia?

Napisz, o co chodzi - nie musi być technicznie, od tego jestem ja. Odezwę się i powiem wprost, czy i jak mogę pomóc.