Cennik w Arkuszach Google: formuła ceny, IMPORTRANGE, Google Sheets API i limity

Spis tresci
  1. Kiedy ludzie szukają cennika w Arkuszach Google
  2. Jakie kolumny potrzebne są w cenniku
  3. Jak policzyć cenę sprzedaży formułą
  4. Jak wciągnąć cennik hurtowni do swojego arkusza
  5. Jak dać klientom dostęp do cennika
  6. Jak automatycznie aktualizować kurs i ceny
  7. Google Sheets API: kiedy jest potrzebne i jak zacząć
  8. Gdzie kończą się możliwości arkusza
  9. Kiedy oddać cenniki programowi
  10. Najczęstsze pytania
  11. Źródła

Cennik w Arkuszach Google to jeden arkusz z pięcioma kolumnami: Kod, Nazwa, Zakup, Cena i Stan. Cenę sprzedaży liczy formuła z kursu i narzutu, cenniki hurtowni wpadają przez IMPORTRANGE albo IMPORTDATA, krótki skrypt Apps Script codziennie wpisuje kurs średni NBP, a gdy ceny ma zmieniać Twój sklep lub aplikacja — służy do tego Google Sheets API. Tak da się pracować do kilku tysięcy pozycji i kilku hurtowni.

Błędy zwykle dotyczą dostępu i skali. Roboczy plik udostępniony klientom przez link pokazuje im ceny zakupu na sąsiedniej karcie, a funkcje importu nie odświeżają się od razu i trafiają w limity Google. Dalej: struktura, formuła na przykładzie, podłączenie hurtowni, dostęp dla klientów, automatyzacja przez skrypt i API oraz moment, w którym arkusz przestaje wystarczać.

Kiedy ludzie szukają cennika w Arkuszach Google

Zwykle to mały sklep albo hurtownia, której cennik żyje w Excelu na jednym komputerze. Handlowcy mają widzieć aktualne ceny, klienci — otwierać cennik z linku, a kursy i ceny dostawców mają się aktualizować same. Stąd zapytania „importrange”, „google sheets api” i „jak połączyć dwa arkusze Google”.

„Jaką formułę wpisać” rozwiążesz w dziesięć minut. Trudniejsze pytania brzmią inaczej: jak nie pokazać klientom cen zakupu i co zrobić, gdy hurtownia przestawi kolumny.

Jakie kolumny potrzebne są w cenniku

Minimum to pięć kolumn. Kurs i narzut trzymaj w osobnych komórkach, żeby zmieniać je w jednym miejscu.

Szablon cennika w Arkuszach Google: kod, nazwa, zakup w dolarach, cena w złotych i stan
Kolumny roboczego cennika
KolumnaCo zawieraSkąd się bierze
A — KodKod produktu do wyszukiwania i dopasowania cennikówhurtownia
B — NazwaTwoja nazwa produktu dla klientówTy
C — Zakup $Cena hurtowni w walucie cennikahurtownia
D — Cena, złCena sprzedaży — tylko formułaformuła
E — Stan„jest”, „na zamówienie”, „brak” — z listy rozwijanejhurtownia
H1, H2Kurs i narzutskrypt i Ty

Kolumnę „Stan” zrób listą rozwijaną (Dane → Sprawdzanie poprawności danych). Wtedy „tak”, „+” i „dost.” się nie mieszają, a filtry działają.

Jak policzyć cenę sprzedaży formułą

Cena sprzedaży = zakup × kurs × (1 + narzut), zaokrąglona w górę do końcówki ,99. W H1 jest kurs średni NBP (złotych za dolara), w H2 — narzut. W polskiej wersji Arkuszy funkcja zaokrąglania w górę nazywa się ZAOKR.GÓRA (po angielsku ROUNDUP), argumenty oddziela średnik, a część dziesiętną — przecinek. W D2:

=ZAOKR.GÓRA(C2*$H$1*(1+$H$2)+0,01;0)-0,01

Przykład poglądowy do arytmetyki, liczby nie są cenami rynkowymi. Hurtownia liczy 20 $, kurs w H1 to 4,00 zł za dolara, narzut w H2 — 25%.

  • 20 × 4,00 = 80,00 zł — zakup w złotych;
  • 80,00 × 1,25 = 100,00 zł — z narzutem;
  • 100,00 + 0,01 = 100,01 → w górę do 101 → 101 − 0,01 = 100,99 zł.
Obliczenie ceny: 20 $ × 4,00 = 80 zł, plus 25% = 100 zł, zaokrąglenie w górę do 100,99 zł

Dodatek +0,01 pilnuje, żeby okrągła cena, jak 100,00 zł, nie spadła do 99,99 zł — poniżej Twojego narzutu. Jeśli narzut zależy od kategorii, dodaj kolumnę „Narzut” i wskaż ją w formule zamiast $H$2. Jaki narzut pokrywa dostawę i prowizje, sprawdzisz w artykule marża a narzut: wzory i przykład.

Jak wciągnąć cennik hurtowni do swojego arkusza

To zależy od tego, jak hurtownia wysyła cennik: arkusz Google — IMPORTRANGE, link do pliku CSV — IMPORTDATA, feed XML — IMPORTXML. Nazwy tych funkcji w polskiej wersji Arkuszy są takie same jak w angielskiej.

Trzy funkcje Arkuszy Google wciągają dane do cennika: IMPORTRANGE, IMPORTDATA i IMPORTXML
Funkcje importu w Arkuszach Google
Cennik hurtowniFunkcjaO czym pamiętać
Arkusz Google=IMPORTRANGE("link";"Ceny!A2:E")Raz kliknij „Zezwól na dostęp”; do 10 MB danych na żądanie
Link do pliku CSV lub TSV=IMPORTDATA("link")Działa tylko z bezpośrednim linkiem do pliku
Feed XML=IMPORTXML("link";"//item/price")Drugi argument to zapytanie XPath do potrzebnych węzłów

Import pobiera zakres po adresie, a nie po nazwie kolumny. Jeśli hurtownia wstawi kolumnę „Marka” między kod a cenę, Twoja kolumna „Zakup” wypełni się nazwami marek — a formuła ceny po cichu zwróci błąd albo bzdurę. Trzymaj import na osobnej karcie i sprawdzaj nagłówki po każdej zmianie cennika.

Jak dać klientom dostęp do cennika

Daj klientom osobny plik, nie roboczy. „Każda osoba mająca link → Przeglądający” otwiera cały arkusz, razem z kartą cen zakupu.

  1. Utwórz plik „Cennik dla klientów” i wciągnij do niego z roboczego pliku przez IMPORTRANGE tylko Kod, Nazwę, Cenę i Stan.
  2. Udostępnij → „Każda osoba mająca link” → „Przeglądający”.
  3. Albo Plik → Udostępnij → „Opublikuj w internecie”: opublikowana wersja aktualizuje się sama po zmianach w oryginale, z opóźnieniem do kilku minut.

Dla różnych grup klientów, na przykład hurtu i detalu, rób osobne pliki z osobnymi kolumnami cen: linki krążą dalej.

Jak automatycznie aktualizować kurs i ceny

Kurs średni NBP wpisuj do arkusza skryptem Apps Script uruchamianym według harmonogramu. NBP aktualizuje tabelę A kursów średnich w każdy dzień roboczy między 11:45 a 12:15, więc ceny nie skaczą w ciągu dnia jak przy notowaniu rynkowym z GOOGLEFINANCE. Otwórz Rozszerzenia → Apps Script i wklej funkcję:

function aktualizujKurs() {
  var url = 'https://api.nbp.pl/api/exchangerates/rates/a/usd/?format=json';
  var dane = JSON.parse(UrlFetchApp.fetch(url).getContentText());
  SpreadsheetApp.getActive().getSheetByName('Cennik')
    .getRange('H1').setValue(dane.rates[0].mid);
}

Potem w edytorze skryptu: Reguły → Dodaj wyzwalacz → funkcja aktualizujKurs → źródło zdarzenia oparte na czasie → codziennie, przedział 13:00–14:00. Aktywatory oparte na czasie mogą działać od co minutę do raz w miesiącu; dokładna godzina jest nieco losowa w obrębie wybranej godziny. Dla euro zamień w linku usd na eur. Jeśli umowa z hurtownią wskazuje inny kurs, używaj tego z umowy.

Skrypt może też co noc pobrać cennik hurtowni z linku i zapisać go na karcie. Arkusz jest wtedy jedynym miejscem, gdzie liczysz ceny — ale wciąż odświeża się tylko tak często, jak pozwalają limity z tabeli niżej.

Google Sheets API: kiedy jest potrzebne i jak zacząć

Google Sheets API to interfejs, przez który Twój program — sklep, aplikacja, skrypt w Pythonie na serwerze — czyta i zapisuje komórki arkusza bez otwierania go w przeglądarce. Potrzebne jest wtedy, gdy ceny mają płynąć między arkuszem a systemem spoza Google; jeśli wszystko dzieje się w samym arkuszu, wystarczy Apps Script.

  1. Utwórz projekt w Google Cloud i włącz w nim Google Sheets API.
  2. Wybierz dane logowania. Klucz API daje tylko anonimowy dostęp do danych publicznych. Identyfikator klienta OAuth — gdy program działa w imieniu osoby i prosi ją o zgodę. Konto usługi — gdy program działa sam, na przykład na serwerze sklepu.
  3. Kontu usługi udostępnij arkusz na jego adres e-mail, jak zwykłemu użytkownikowi: role uprawnień Google Cloud nie dają dostępu do plików w Dysku.
  4. Zainstaluj bibliotekę klienta Google dla swojego języka (dla Pythona Google podaje pakiet google-api-python-client) i odczytaj zakres, na przykład Cennik!A2:E.

Standardowe korzystanie z Google Sheets API jest bezpłatne. Limity: 300 żądań odczytu i 300 zapisu na minutę na projekt oraz po 60 na minutę na użytkownika w projekcie. Google zapowiada, że przekroczenie limitów ma być płatne z konta rozliczeniowego Google Cloud jeszcze w 2026 roku. Pojedyncze żądanie, które przetwarza się dłużej niż 180 sekund, kończy się błędem, a Google zaleca ładunek do 2 MB — dlatego zapisuj cennik paczkami (jedno żądanie na zakres), a nie komórka po komórce.

Gdzie kończą się możliwości arkusza

Arkusz trafia na limit odświeżania, a nie wierszy: funkcje importu odświeżają się co 30–60 minut, a skrypty mają dzienny limit czasu działania.

Limity Arkuszy Google: import odświeża się co 30–60 min, do 20 mln komórek, skrypt działa do 6 min
Limity Google, które dotyczą cennika (sprawdzono 01.11.2026)
CoLimit
Rozmiar arkuszado 20 mln komórek lub 100 MB
IMPORTRANGEdo 10 MB danych na żądanie; odświeżanie co 30 minut
IMPORTDATA, IMPORTXML, IMPORTHTMLodświeżanie co godzinę
GOOGLEFINANCEopóźnienie do 20 minut
Uruchomienie Apps Scriptdo 6 minut na wykonanie
Reguły, konto Gmail (prywatne)do 90 minut działania dziennie
Wywołania UrlFetchApp, konto Gmail (prywatne)do 20 000 dziennie
Google Sheets API300 odczytów i 300 zapisów na minutę na projekt, 60 na użytkownika

Praktyczne sygnały, że arkusz już nie nadąża:

  • masz więcej niż trzy–cztery hurtownie, każdą z własnymi kolumnami, walutą i oznaczeniami stanów;
  • ten sam produkt jest w kilku cennikach, a cenę wybierasz ręcznie;
  • ceny w sklepie mają się zmieniać częściej niż raz na godzinę;
  • ktoś co tydzień spędza godziny na naprawianiu formuł po zmianie cennika.

Kiedy oddać cenniki programowi

Gdy masz kilka hurtowni, a ich ceny mają trafiać do sklepu bez ręcznego sprawdzania formuł.

Elbuz pobiera cennik hurtowni prosto z arkusza Google z linku — także z prywatnego, który hurtownia udostępniła na adres e-mail usługi Elbuz — a do tego z e-maila, FTP lub strony, o ustalonej godzinie. Kolumny rozpoznaje po nagłówkach według swojego słownika, a gdy hurtownia przestawi kolumny, ostrzega o tym przy imporcie i proponuje nowe adresy jednym przyciskiem; kurs (także z tabeli A NBP), narzut i zaokrąglenie ustawiasz regułami. Więcej na stronie integracja z hurtowniami: ceny i stany.

Komu się nie przyda: przy jednej hurtowni i kilkuset pozycjach wystarczą Arkusze Google z formułą i skryptem kursu.

Cenniki z Arkuszy Google w ElbuzKolumny, kurs i narzut według reguł, 14 dni za darmo

Najczęstsze pytania

Czy Google Sheets API jest darmowe?

Tak, standardowe korzystanie jest bezpłatne w limicie 300 żądań na minutę na projekt i 60 na użytkownika. Google zapowiada opłaty za przekroczenie limitów jeszcze w 2026 roku.

Jak uzyskać dostęp do Google Sheets API?

Włącz Google Sheets API w projekcie Google Cloud, utwórz dane logowania (OAuth albo konto usługi) i — przy koncie usługi — udostępnij arkusz na jego adres e-mail. Kroki są w sekcji Google Sheets API.

Jak połączyć dwa arkusze Google?

Funkcją IMPORTRANGE: podaj link do arkusza i zakres, na przykład "Ceny!A2:E", a przy pierwszym użyciu kliknij „Zezwól na dostęp”.

Jak często odświeża się IMPORTRANGE i IMPORTXML?

Według pomocy Google IMPORTRANGE co 30 minut, a IMPORTDATA, IMPORTXML i IMPORTHTML co godzinę. Szybciej — tylko skryptem albo programem.

Czy da się zautomatyzować Arkusze Google?

Tak: Apps Script z aktywatorem opartym na czasie uruchamia funkcję według harmonogramu, na przykład codziennie wpisuje kurs NBP. Kod jest w sekcji automatyczna aktualizacja kursu.

Jak udostępnić cennik klientom tylko do odczytu?

Zrób osobny plik dla klientów bez cen zakupu i udostępnij go jako „Każda osoba mająca link → Przeglądający” albo opublikuj przez Plik → Udostępnij → „Opublikuj w internecie”.

Ile danych zmieści arkusz Google?

Do 20 mln komórek lub 100 MB na arkusz. Dla cennika ważniejsze są limity odświeżania importu i czasu działania skryptów.

Źródła

Sprawdzono 01.11.2026.

Zapisz link do tego artykulu Telegram Facebook X LinkedIn Viber WhatsApp
Dowiedz się więcej o Elbuz z AI Zadaj pytanie — wybierz czat, a AI przeanalizuje tę stronę za Ciebie:

Dyskusja na ten temat – Cennik w Arkuszach Google: formuła ceny, IMPORTRANGE, Google Sheets API i limity

0 komentarzy

Nie ma recenzji dla tego produktu.

Napisz komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są zaznaczone

Dalej

Wypróbuj Elbuz za darmo