Microsoft Excel przez dekady był standardowym narzędziem do analiz biznesowych. Przy indywidualnej pracy, prostych kalkulacjach i raportach jednorazowych działa dobrze. Problem pojawia się, gdy kilka osób jednocześnie edytuje ten sam plik, dane zaczynają być wysyłane mailem jako załączniki lub procesy wymagają automatyzacji – wtedy architektura oparta na lokalnych plikach .xlsx zaczyna generować realne koszty operacyjne.
3 sygnały, że Excel zaczyna hamować firmę
1. Konflikty wersji – brak jednego źródła prawdy. Jeśli w firmie funkcjonuje wiele kopii tego samego pliku z różnymi datami w nazwie, dane nigdy nie są spójne w jednym miejscu. Dyrektor operacyjny raportuje z pliku zapisanego we wtorek, dział finansów zaktualizował koszty w wersji otrzymanej mailem dzień wcześniej. Wynik: rozbieżności podczas spotkań z zarządem i czas poświęcony na reconciliację zamiast na analizę.
Google Sheets rozwiązuje ten problem strukturalnie – istnieje jeden URL, jedna wersja dokumentu, dostęp zarządzany przez uprawnienia. Historia zmian z dokładnością do sekundy pozwala cofnąć się do dowolnego stanu pliku.
2. Makra VBA zależne od lokalnego środowiska. Skrypty VBA działają wyłącznie na komputerze, na którym zostały uruchomione, i są wrażliwe na wersję Excela oraz system operacyjny. Nie uruchomią się, gdy laptop jest uśpiony lub pracownik jest na urlopie. Nie ma centralnego harmonogramu ich wykonania.
Google Apps Script działa serwerowo – uruchamia się niezależnie od tego, czy komputer jest włączony. Trigger czasowy, który wysyła raport sprzedaży co poniedziałek o 7:00, nie wymaga obecności żadnego pracownika przy komputerze.
3. Brak natywnej integracji z zewnętrznymi API. Plik .xlsx jest izolowany od danych zewnętrznych. Aktualizacja kursów walut, statusów zamówień z systemu kurierskiego czy wyników kampanii reklamowych wymaga ręcznego kopiowania lub osobnych narzędzi ETL. W Google Sheets funkcja IMPORTXML pobiera dane ze stron WWW, a Apps Script umożliwia bezpośrednie wywołania REST API bez żadnych dodatkowych narzędzi.
Centralizacja danych w jednym arkuszu chmurowym eliminuje problem wersjonowania. Zamiast kilku kopii pliku – jeden adres URL z kontrolą dostępu na poziomie komórki.
Excel vs Google Sheets vs BigQuery – tabela
| Kryterium | Excel (lokalny) | Google Sheets | BigQuery |
|---|---|---|---|
| Limit wierszy | ~1M wierszy | 10M komórek | Bez limitu (petabajty) |
| Współpraca w czasie rzeczywistym | Brak (SharePoint ograniczony) | Pełna | Pełna (przez UI/API) |
| Automatyzacja | VBA – lokalnie | Apps Script – serwerowo | Scheduled Queries, Workflows |
| Integracje API | Wymaga VBA lub Power Query | UrlFetchApp natywnie | Natywne konektory GCP |
| Koszt licencji | Microsoft 365: ~50 zł/użytkownik/mies. | Darmowy (konto Google) lub Workspace | Darmowe 10 GB storage + 1 TB zapytań/mies. |
| Raportowanie BI | Power BI (płatny) | Data Studio (darmowy) | Data Studio + BigQuery |
Automatyzacja: VBA vs Apps Script
Praktyczna różnica między VBA a Apps Script sprowadza się do jednego pytania: czy automatyzacja musi działać bez obecności konkretnego pracownika przy komputerze?
VBA uruchamia się tylko wtedy, gdy plik jest otwarty w Excelu na właściwym komputerze. Jeśli skrypt ma generować raport codziennie o 6:00, ktoś musi mieć plik otwarty lub skonfigurowany Task Scheduler na dedykowanym komputerze – co jest nieelastyczne i trudne w utrzymaniu.
Apps Script działa na serwerach Google. Poniższy trigger uruchomi funkcję każdego poniedziałku o 7:00, niezależnie od stanu komputerów w firmie:
function setupWeeklyTrigger() {
ScriptApp.newTrigger('generateWeeklyReport')
.timeBased()
.onWeekDay(ScriptApp.WeekDay.MONDAY)
.atHour(7)
.create();
}
function generateWeeklyReport() {
const sheet = SpreadsheetApp.getActiveSpreadsheet();
// logika generowania raportu
MailApp.sendEmail('cfo@firma.pl', 'Raport tygodniowy', 'W załączniku raport.');
}
Kiedy Google Sheets też przestaje wystarczać
Google Sheets ma limit 10 milionów komórek na arkusz. Przy intensywnym użyciu formuł na dużych zakresach czas przeliczania rośnie do kilkudziesięciu sekund. To wystarczy dla większości firm, ale e-commerce z milionami transakcji lub logistyka śledząca dziesiątki tysięcy zleceń dziennie potrzebuje czegoś więcej.
Kolejny krok to Google BigQuery – kolumnowa hurtownia danych działająca w chmurze GCP. BigQuery przetwarza zapytania SQL na terabajtach danych w sekundy, a wyniki można podłączyć bezpośrednio do Data Studio jako dashboard. Darmowy limit: 10 GB przechowywania i 1 TB zapytań miesięcznie – wystarczy dla większości firm na początku migracji.
Plan migracji krok po kroku
- Audyt plików – zinwentaryzuj wszystkie pliki .xlsx używane regularnie: kto z nich korzysta, jak często są aktualizowane, czy mają makra VBA.
- Migracja pasywna – zacznij od plików współdzielonych między działami. Przenieś je do Google Sheets i usuń lokalne kopie z dysków.
- Przepisanie makr – proste makra VBA (generowanie raportów, wysyłka maili) przepisz na Apps Script. Logika jest zwykle izomorficzna.
- Podłączenie API – jeśli pliki pobierają dane ręcznie z systemów zewnętrznych, zautomatyzuj import przez UrlFetchApp.
- Skalowanie do BigQuery – gdy arkusz osiągnie granicę wydajności, przenieś surowe dane do BigQuery i zostaw w Sheets tylko warstwy prezentacyjne.