Edytor formuł
Edytor oferuje kilka pomocy do tworzenia formuł:
- Kolorowanie składni: funkcje, pola i operatory są kolorowane dla ułatwienia czytania
- Panel funkcji: przeglądaj dostępne funkcje według kategorii, klikając na zakładki (Atrybuty, Tekst, Liczby, Data, Logika)
- Wyszukiwanie: wpisz nazwę funkcji lub atrybutu, aby szybko go znaleźć
- Pomoc po najechaniu: najedź kursorem na funkcję, aby zobaczyć jej składnię, przykład i opis
- Wstawianie kliknięciem: kliknij funkcję lub atrybut, aby wstawić go do formuły
- Walidacja w czasie rzeczywistym: wskaźnik pokazuje, czy formuła jest prawidłowa, czy nie
Używanie atrybutu w formule
Aby użyć wartości innego atrybutu w formule, umieść jego nazwę w nawiasach klamrowych:
Panel Atrybuty w edytorze wyświetla wszystkie dostępne atrybuty tablicy — kliknij jeden z nich, aby automatycznie go wstawić.
Format wyjściowy
Każda formuła generuje wynik, który może być wyświetlany na różne sposoby. Wybierz format odpowiadający oczekiwanemu typowi wyniku:
Tekst
Wynik jest wyświetlany w postaci tekstu, tak jak jest.
Przykład: CONCATENATE({Prénom}, " ", {Nom}) → Jean Dupont
Liczba
Wynik jest wyświetlany jako liczba, z kilkoma wariantami:
{Nom de la propriété}| Wariant | Opis | Przykład |
|---|---|---|
| Surowy | Prosta liczba z opcjonalną jednostką | 42 €, 1 500 kg |
| Procent | Procent z opcjonalnym paskiem postępu | 75% ████░░ |
| Czas trwania | Liczba z jednostką czasu | 3 jours, 8 heures |
| Ocena | Gwiazdki lub ikony | ★★★☆☆ |
| Wynik | Wartość w przedziale | 7 / 10 |
Dostępne opcje:
- Jednostka i jej pozycja (przed lub po liczbie) — dla formatu Surowy
- Precyzja — liczba wyświetlanych miejsc po przecinku
- Pasek postępu — wizualne wyświetlanie procentu
- Liczba ikon, kolor i typ ikony — dla oceny
- Minimum/Maksimum — dla wyniku
Data
Wynik jest interpretowany jako data i wyświetlany zgodnie z wybranym trybem (standardowy, względny, ISO itp.).
Przykład: ADD_DAYS({Date de début}, 14) → 15/05/2026
Dostępne funkcje
Funkcje tekstowe
| Funkcja | Opis | Przykład | Wynik |
|---|---|---|---|
CONCATENATE(t1, t2, ...) | Łączy kilka tekstów | CONCATENATE({Prénom}, " ", {Nom}) | Jean Dupont |
LEFT(texte, n) | Pierwsze n znaków | LEFT("Bonjour", 3) | Bon |
RIGHT(texte, n) | Ostatnie n znaków | RIGHT("Bonjour", 4) | jour |
MID(texte, début, n) | Wyodrębnia n znaków od pozycji | MID("Bonjour", 4, 4) | jour |
LEN(texte) | Długość tekstu | LEN("Bonjour") | 7 |
LOWER(texte) | Konwertuje na małe litery | LOWER("HELLO") | hello |
UPPER(texte) | Konwertuje na wielkie litery | UPPER("hello") | HELLO |
REPLACE(texte, début, n, nouveau) | Zastępuje fragment tekstu | REPLACE("Bonjour", 1, 3, "Sal") | Saljour |
SEARCH(recherche, texte) | Sprawdza, czy tekst zawiera inny | SEARCH("jour", "Bonjour") | true |
SUBSTITUTE(texte, ancien, nouveau) | Zastępuje wszystkie wystąpienia | SUBSTITUTE("a-b-c", "-", "/") | a/b/c |
Wskazówka: Operator
+może być również używany do łączenia tekstu, na przykład{Prénom} + " " + {Nom}
Funkcje liczbowe
| Funkcja | Opis | Przykład | Wynik |
|---|---|---|---|
SUM(n1, n2, ...) | Suma | SUM({Effort}, {Bonus}) | 15 |
AVERAGE(n1, n2, ...) | Średnia | AVERAGE(10, 20, 30) | 20 |
MIN(n1, n2, ...) | Wartość minimalna | MIN({Estimation}, {Réel}) | 5 |
MAX(n1, n2, ...) | Wartość maksymalna | MAX({Estimation}, {Réel}) | 12 |
ABS(n) | Wartość bezwzględna | ABS(-5) | 5 |
ROUND(n, décimales) | Zaokrąglenie | ROUND(3.14159, 2) | 3.14 |
CEILING(n) | Zaokrąglenie w górę | CEILING(4.3) | 5 |
FLOOR(n) | Zaokrąglenie w dół | FLOOR(4.7) | 4 |
MOD(n, diviseur) | Reszta z dzielenia | MOD(10, 3) | 1 |
POWER(base, exposant) | Potęga | POWER(2, 3) | 8 |
SQRT(n) | Pierwiastek kwadratowy | SQRT(16) | 4 |
EXP(n) | Wykładnicza (e^n) | EXP(1) | 2.718... |
LOG(n, base) | Logarytm (domyślnie o podstawie 10) | LOG(100, 10) | 2 |
Operatory arytmetyczne: +, -, *, /, ^ (potęgowanie)
Funkcje daty
| Funkcja | Opis | Przykład | Wynik |
|---|---|---|---|
TODAY() | Data dzisiejsza | TODAY() | 2026-04-29 |
NOW() | Aktualna data i godzina | NOW() | 2026-04-29T14:30:00 |
DAYS(fin, début) | Liczba dni między dwiema datami | DAYS({Échéance}, TODAY()) | 15 |
ADD_DAYS(date, n) | Dodaje n dni do daty | ADD_DAYS(TODAY(), 7) | 2026-05-06 |
YEAR(date) | Wyodrębnia rok | YEAR({Date de création}) | 2026 |
MONTH(date) | Wyodrębnia miesiąc (1 do 12) | MONTH({Date de création}) | 4 |
WEEKDAY(date) | Dzień tygodnia (1=niedz … 7=sob) | WEEKDAY(TODAY()) | 4 |
HOUR(date) | Wyodrębnia godzinę | HOUR({Horodatage}) | 14 |
MINUTE(date) | Wyodrębnia minuty | MINUTE({Horodatage}) | 30 |
SECOND(date) | Wyodrębnia sekundy | SECOND({Horodatage}) | 0 |
FORMAT_DATE(date, format) | Formatuje datę | FORMAT_DATE(TODAY(), "dd/MM/yyyy") | 29/04/2026 |
FORMAT_DURATION(secondes) | Konwertuje sekundy na HH:MM:SS | FORMAT_DURATION(3661) | 01:01:01 |
Funkcje logiczne
| Funkcja | Opis | Przykład | Wynik |
|---|---|---|---|
IF(condition, alors, sinon) | Jeśli… to… w przeciwnym razie | IF({Points} > 10, "Élevé", "Bas") | Élevé |
AND(c1, c2, ...) | Prawda, jeśli wszystkie warunki są prawdziwe | AND({Actif}, {Validé}) | true |
OR(c1, c2, ...) | Prawda, jeśli przynajmniej jeden warunek jest prawdziwy | OR({Urgent}, {Bloqué}) | true |
NOT(condition) | Odwraca warunek | NOT({Archivé}) | true |
SWITCH(expr, v1, r1, …, défaut) | Rozgałęzienie wielowartościowe | SWITCH({Priorité}, "Haute", 3, "Moyenne", 2, 1) | 3 |
ISBLANK(valeur) | Prawda, jeśli wartość jest pusta | ISBLANK({Description}) | false |
IFERROR(valeur, repli) | Wartość zastępcza w przypadku błędu | IFERROR({Prix} / {Quantité}, 0) | 0 |
Operatory porównania: == (równy), != (różny), <, >, <=, >=
Opcje zaawansowane — Dni robocze
W przypadku formuł wykorzystujących obliczenia dat możesz włączyć tryb Tylko dni robocze:
- W edytorze formuł otwórz sekcję Opcje zaawansowane
- Włącz Tylko dni robocze
- Opcjonalnie skonfiguruj dni świąteczne:
- Dodaj daty pojedynczo za pomocą selektora
- Lub zaimportuj listę dat za pomocą pliku CSV
Gdy ta opcja jest włączona:
DAYS()liczy tylko dni robocze (z wyłączeniem weekendów i dni świątecznych)
ADD_DAYS()dodaje dni robocze (pomija weekendy i dni świąteczne)
Przykład: Jeśli poniedziałek to 29.04.2026, ADD_DAYS(TODAY(), 3) zwróci 04.05.2026 (następny poniedziałek) zamiast 02.05.2026, ponieważ sobota i niedziela są ignorowane.
Wiersz sumy (Spare Row)
W przypadku formuł z formatem wyjściowym Liczba, wiersz sumy na dole tabeli automatycznie wyświetla agregację:
| Wariant | Wyświetlana agregacja |
|---|---|
| Surowy | Suma wszystkich wartości |
| Czas trwania | Suma wszystkich wartości |
| Procent | Średnia wszystkich wartości |
| Ocena | Średnia wszystkich wartości |
| Wynik | Średnia wszystkich wartości |
Atrybuty możliwe do użycia w formule
Tylko niektóre typy atrybutów mogą być odwoływane w formule:
| Typ właściwości | Wartość wstrzykiwana do formuły |
|---|---|
| Tekst | Treść tekstowa |
| Liczba | Wartość numeryczna |
| Data | Data w formacie ISO |
| Tag | Nazwy tagów oddzielone przecinkami |
| Użytkownik | Nazwa użytkownika |
| Numer automatyczny | Automatycznie inkrementowana wartość numeryczna |
| Data utworzenia | Data utworzenia encji |
| Data ostatniej modyfikacji | Data ostatniej modyfikacji |
| Utworzone przez | Nazwa twórcy |
| Zmodyfikowane przez | Nazwa ostatniego modyfikatora |
| Lookup | Wartość lustrzana, tylko jeśli właściwość lustrzana jest sama w sobie jednym z dozwolonych typów powyżej |
Nieobsługiwane: Formuła, Relacja, Pliki, URL, Lista kontrolna, Tekst sformatowany, Lokalizacja, Link do tablicy, Produkty, Głosowanie, Połączenie.
Ograniczenia i dobre praktyki
- Wydajność: formuły są kompilowane i automatycznie buforowane. W przypadku tablic z dużą liczbą elementów zaleca się stosowanie prostych formuł
NOW()iTODAY(): te funkcje zwracają datę/godzinę w momencie wyświetlenia. Aktualizują się przy każdym odświeżeniu strony, ale nie w czasie rzeczywistym
- Porównywanie dat: operatory
<,>,==,!=,<=,>=działają bezpośrednio na datach
- Tekst + Liczba: operator
+automatycznie łączy, jeśli jeden z operandów jest tekstem ("Total: " + {Points}→"Total: 42")
- Puste wartości: jeśli przywoływany atrybut nie ma wartości, jest traktowany jako pusty ciąg znaków (
""). UżyjISBLANK(), aby sprawdzić, iIFERROR(), aby obsłużyć błędy