Dynamic Forms w Excel – elastyczne tworzenie formularzy bez kodowania

Aleksandra Nowak
5 min read
Dynamic Forms w Excel – elastyczne tworzenie formularzy bez kodowania

Wprowadzenie

Dynamic Forms to rozwiązanie umożliwiające tworzenie rozbudowanych formularzy na podstawie konfiguracji zapisanej w pliku Excel. Dzięki temu możemy w prosty sposób modyfikować układ i właściwości pól, nie zmieniając kodu aplikacji.

Takie podejście daje ogromną elastyczność – wystarczy edytować arkusz w Excelu, a narzędzie Dynamic Forms automatycznie wygeneruje nowy wygląd i logikę formularza. Bez rekompilacji kodu, bez skomplikowanych wdrożeń!

Podgląd formularza w pliku Excel Podgląd wygenerowanego formularzal

Dlaczego warto stosować Dynamic Forms w Excel?

  1. Błyskawiczne modyfikacje – edytujesz arkusz Excel i od razu masz nową wersję formularza.
  2. Oszczędność czasu – minimalizujesz zmiany w kodzie, co przyspiesza cały cykl rozwoju.
  3. Czytelna konfiguracja – wszystkie właściwości formularza są zebrane w jednym pliku, dzięki czemu łatwo je zrozumieć i edytować.
  4. Skalowalność – możesz tworzyć dowolną liczbę sekcji, zakładek i pól, dostosowując formularz do rosnących potrzeb.
  5. Mobilna wersja - możesz tworzyć widoki na telefon

Podgląd wygenerowanego formularzal mobilnego

Struktura pliku Excel

W pliku Excel każda kontrolka (pole formularza, przycisk, sekcja, zakładka itp.) jest opisana w osobnym wierszu. Poszczególne kolumny natomiast definiują właściwości tych kontrolek, m.in. nazwę, typ, walidację czy szerokość.

W dokumentacji znajdziesz typowe nazwy kolumn, takie jak:

  • Nazwa – określa nazwę i często typ kontrolki (np. Nip, sekcja, tabs).
  • Typ – wskazuje rodzaj kontrolki (np. przycisk, cb – checkbox, img – obrazek).
  • U (Ukryty) – 1 oznacza, że kontrolka jest niewidoczna, 0 – widoczna.
  • * (Wymagane) – 0: niewymagane, 1: wymagane, 2: wymagane warunkowo.
  • RO (Read Only) – 1: pole tylko do odczytu.
  • Opis – dodatkowe informacje dla twórcy, niewidoczne dla użytkownika.
  • Źródło danych – może być listą wartości lub odwołaniem do zewnętrznego źródła.
  • Ikona – nazwa ikony z biblioteki Material Symbols.
  • Znak wodny (placeholder) – podpowiedź w polu tekstowym.
  • Wyrównaniel (lewo), p (prawo), c (środek).
  • Walid – reguła walidacji (data, email, nip, itp.).
  • Walid. Wiadomość – komunikat wyświetlany przy niepoprawnych danych.
  • Tooltip – krótka podpowiedź pojawiająca się po najechaniu kursorem.
  • Wartość – wartość domyślna kontrolki.
  • Binding – nazwa pola w modelu (ViewModel) służąca do dwukierunkowego wiązania danych.
  • Akcja – definiuje akcję (np. metody wywoływane przez przyciski).
  • Uwagi – notatki tylko dla twórcy formularza.
  • Min / Max – minimalna i maksymalna wartość.
  • Format – np. format daty.
  • Szerokość / Wysokość – określa rozmiar kontrolki.
  • Css Class / Style – umożliwia dodanie klas i styli CSS.
  • El. Class / El. style. – klasy i style dla elementu HTML.
  • Size – predefiniowane rozmiary (np. XS, SM, MD).
  • Wiersz 1,2,3,4,5 – wskazuje w którym wierszu (wizualnym) formularza ma pojawić się kontrolka.

Dzięki tym kolumnom Dynamic Forms „wie”, jak zbudować formularz: gdzie umieścić poszczególne pola, w jaki sposób je zwalidować czy jakie akcje wykonać po wciśnięciu przycisku.

Przykład użycia Dynamic forms

Podgląd formularza w pliku Excel

Analogia do struktury JSON

O ile w Excelu mamy poszczególne pola w wierszach, o tyle można to przedstawić również w formie JSON (czy XML), np.:

Przykład definicji z Excela odwzorowanej w JSON
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14

{
  "formfield": {
    "wiersz": {
      "Nip": {},
      "Forma prawna": {},
      "...": {}
    }
  },
  "tabs": {
    "tab1": {},
    "tab2": {}
  }
}

Każdy wiersz w Excelu to w JSON kolejny obiekt, a każda kolumna – właściwość obiektu.

Wygenerowany widok

Podgląd wygenerowanego formularzal

Typy kontrolek

Dynamic Forms rozpoznaje różne rodzaje kontrolek na podstawie kolumn Nazwa i Typ. Oto przykłady:

  • sekcja – grupuje kilka kontrolek, tworząc wyodrębniony fragment formularza.
  • wiersz (row) – ustawia kontrolki w jednym wierszu obok siebie.
  • formfield – klasyczne pole formularza (np. label + input).
  • tabs / tab – tworzy zakładki w formularzu.
  • przycisk (button) – wywołuje zdefiniowaną akcję (zapisywanie, przejście dalej itp.).
  • tabela (table) – wyświetla dane tabelarycznie.
  • info – pole informacyjne (tylko do odczytu).
  • cb (checkbox) – pole wyboru (tak/nie).
  • img (image) – wyświetla obrazek.
  • link – link zewnętrzny lub wewnętrzny.
  • label – zwykła etykieta lub tekst.
  • panelmenu / panelmenuitem – element menu i podmenu.
  • grid – siatka pól.
  • g1, g2, g3 – grupy kontrolek.
  • header, sidebar, legend, kolumna – do budowania układu formularza.

Przykład użycia w aplikacjach

Jednym z przykładów praktycznego wykorzystania Dynamic Forms z konfigurowanym arkuszem Excel jest repozytorium agidot-eu/loan-application-use-case-pub, gdzie formularz wniosku o pożyczkę jest budowany dynamicznie na podstawie danych z arkusza. Znajdziesz tam:

  • Pola: dane wnioskodawcy (Nip, Kwota, Okres spłaty).
  • Sekcje: informacje o zatrudnieniu, źródłach dochodu.
  • Zakładki: podział na kilka etapów wypełniania wniosku.
  • Przyciski: np. „Zapisz”, „Dalej”, „Wstecz”.

Wszystko to kontrolowane jest poprzez zwykłe edytowanie wierszy i kolumn w Excelu.

Struktura fragmentu formularza (przykład)
1
2
3
4
5
6
7
8
9

{
  "Nazwa": "Nip",
  "Typ": "formfield",
  "Walid": "nip",
  "RO": "0",
  "Wartość": "",
  "Binding": "ModelKlienta.Nip"
}

Krok po kroku: Jak zbudować Dynamic Forms w Excel?

  1. Przygotuj arkusz Excel z kolumnami (Nazwa, Typ, itp.).
  2. Wypełnij wiersze danymi o kontrolkach (np. Nip, Kwota pożyczki, sekcja „Dane klienta” itp.).
  3. Zaimportuj plik do narzędzia Dynamic Forms (lub Twojej aplikacji, która go obsługuje).
  4. Wygeneruj formularz – aplikacja odczyta dane z Excela i zbuduje interfejs.
  5. Dostosuj logikę – ustaw warunki wyświetlania pól (np. pole wymagalne warunkowo), walidacje, akcje przycisków.
  6. Testuj i wdrażaj – wystarczy ponownie zapisać arkusz, aby wprowadzić zmiany w gotowym formularzu.

Podsumowanie

Dynamic Forms w Excel to doskonałe rozwiązanie dla projektów, w których formularze są często zmieniane i rozbudowywane. Niesie ze sobą następujące korzyści:

  • Elastyczność i prostota – wystarczy edycja arkusza Excel.
  • Szybkie wdrożenie – brak konieczności modyfikacji kodu i ponownego uruchamiania aplikacji.
  • Łatwa współpraca – osoby nietechniczne mogą samodzielnie zarządzać formularzami.
  • Skalowalność – arkusz może zawierać dziesiątki lub setki pól i sekcji, a system wygeneruje je automatycznie.

Jeśli chcesz poznać więcej szczegółów na temat Dynamic Forms, koniecznie zajrzyj na stronę Agidot.eu i do repozytorium Loan Application Use Case. Dzięki takiemu podejściu możesz szybko dostosowywać formularze do bieżących potrzeb biznesowych, nie tracąc czasu na skomplikowane modyfikacje kodu.