Autor: PrawoDoExcela

  • Koszty procesu – koszty zastępstwa

    W tym odcinku pokazuję w zasadzie te same operacje co w poprzednim, ale dodatkowo pojawia się kontrola poprawności danych (ok. 02:30). A mimo to jest krótszy, więc tym razem oglądajcie😉

    Zwróćcie uwagę na błąd, który popełniłem przy ustawianiu kontroli i specjalnie pozostawiłem w filmie (od ok. 02:50).

    Podsumowując, jakie podstawowe funkcjonalności arkuszy są tu pokazane jako przydatne:

    • formatowanie zakresu danych jako tabeli (ok. 00:22),
    • wykorzystanie tabeli do szybszego wstawiania formuł (czyli autowypełniania – od ok. 00:45),
    • nadawanie nazw zdefiniowanych (np. ok. 02:12),
    • ich wykorzystanie do łatwiejszego pisania czytelniejszych formuł (np. ok. 03:40),
    • funkcja WYSZUKAJ.PIONOWO (od ok. 00:57),
    • formatowanie komórek – żeby arkusz jakoś wyglądał (od ok. 04:50).

    Na koniec tego odcinka arkusz jeszcze nie wygląda jak należy, ale bez obaw, po 4. odcinku będzie już wszystko na swoim miejscu i w ładnych kolorkach, a nawet przygotowane do druku.

    Ale po co to wszystko? Przecież są różne kalkulatory opłat i stawek. Po pierwsze naklikasz się przy nich jak… no dużo się naklikasz. Po drugie, chodziło mi o pokazanie na najbardziej oczywistym przykładzie tych podstawowych funkcjonalności, które mogą się przydać do budowania własnych narzędzi w rozmaitych sprawach – innych niż koszty procesu.

  • Kontrola poprawności danych (fundacja rodzinna)

    Dlaczego kontrola jest potrzebna

    Excel jest uproszczonym środowiskiem programistycznym, a w programowaniu obowiązuje zasada GIGO, czyli „śmieci na wejściu – śmieci na wyjściu”. Musimy kontrolować poprawność wprowadzanych danych, bo program nie domyśli się, że wpisując np. „sad” mieliśmy na myśli „sąd”, więc jeśli w jednym skoroszycie użyliśmy obu tych wyrazów, to potraktuje je jako różne obiekty.

    Przykład: fundacja rodzinna

    Na przykładzie niektórych obliczeń na potrzeby fundacji rodzinnej prześledzimy metody kontroli danych.

    Załóżmy, że przy zakładaniu fundacji rodzinnej chcemy m.in. obliczyć 2 rzeczy:

    • czy każdy fundator wniósł na fundusz założycielski ustawowe minimum (obecnie wynosi ono 100 000 zł),
    • jakie proporcje w spisie mienia fundacji[1] będą mieli poszczególni fundatorzy po uiszczeniu takich lub innych świadczeń na fundusz założycielski.

    Robimy więc tabelę, w której poszczególne wiersze będą opisywać składniki mienia fundacji. Nadajmy jej nazwę tbWkłady.

    Osobno wypisujemy wartość ustawowego minimum, bo przecież ustawodawca może kiedyś tą wartość zmienić, a my będziemy przecież nadal korzystać z naszego skoroszytu. Komórce z wartością minimum proponuję nadać nazwę zdefiniowaną minimum.

    Całość wygląda tak:

    W trzech pierwszych kolumnach umieszczamy odpowiednie wartości tekstowe bądź liczbowe, a w ostatniej wpisujemy formułę:

    =SUMA.JEŻELI([fundator];[@fundator];[wartość])>=minimum

    Zwraca nam ona wartość logiczną PRAWDA albo FAŁSZ. Już więc widzimy, że w przykładzie z obrazka fundatorka pierwsza od góry nie osiągnęła jeszcze ustawowego minimum. Mówimy jej o tym, na co ona sięga głębiej do kabzy i kładzie na stół kolejne swoje aktywa. Dopisujemy je do tabeli. Przypomnijmy: wystarczy ustawić się pod tabelą i zacząć wpisywać kolejne pozycje.

    Gdy pracowaliśmy nad sprawą ze wspomnianą fundatorką, wtrąciła się druga z nich i dorzuciła jeszcze coś od siebie. Na tym etapie nasza tabela wygląda tak:

    Coś jest nie tak! Przecież na oko widać, że Kangurzyca ma łącznie więcej niż 100 000 zł. Aby to unaocznić, posortujmy tabelę według kolumny „fundator” alfabetycznie rosnąco. Uzyskujemy taki efekt:

    I teraz widzimy nie tylko, że Kangurzyca ma ponad 100 000 zł, ale i to, że za trzecim razem wpisaliśmy jej imię z błędem. To dlatego formuła w ostatniej kolumnie zwraca wynik FAŁSZ. Dla nas Kangurzyca i Kangurzzyca to to samo, ot po prostu oczywista omyłka. Natomiast dla Excela to dwa różne ciągi tekstowe. W naszej formule pełnią one rolę argumentu „kryterium” w funkcji SUMA.JEŻELI. Dla Excela Kangurzyca ma zatem 50 216 zł, a Kangurzzyca 60 753 zł i dopóki nie poprawimy literówki, on tych wartości nie zsumuje.

    W naszym przykładzie wydaje się to być niewielkim problemem. Jednak co będzie, jeśli fundatorów będzie kilkunastu? Wyobraźmy sobie też jakieś projekty inne niż fundacja rodzinna, gdzie „udziałowców” mogłoby być kilkudziesięciu, a formuła miałaby zliczać ich wkłady lub mienie[2]. Aby zapobiec błędom stosujemy kontrolę poprawności danych.

    Dynamiczna lista rozwijana

    Lista rozwijana to ta forma kontroli poprawności danych, której potrzebujemy w trzeciej kolumnie tabeli tbWkłady. Taka lista musi mieć swoje źródło. Rozpocznijmy tworzenie tego źródła.

    Tworzymy osobną tabelę z jedną kolumną. Nazwijmy ją „tbFundatorzy” i wypiszmy wszystkich naszych fundatorów.

    Celowo pokazuję przykład, w którym nie wpisałem fundatorów alfabetycznie. Po pierwsze tabelę można posortować alfabetycznie później. Po drugie niżej pokażę, że nawet nieposortowaną tabelę można wykorzystać tak, aby jej pozycje wyświetlały się alfabetycznie na liście rozwijanej.

    Teraz przejdźmy do samego ustawienia poprawności danych. Trzeba zaznaczyć całą kolumnę fundator, bez nagłówka (skrót klawiaturowy: ctrl + spacja).

    Na karcie Dane w sekcji Narzędzia danych wybieramy polecenie Poprawność danych:

    Otworzy się okno, w którym należy podać kryterium poprawności. Wybieramy pozycję Lista.

    Następnie, jeśli wybraliśmy listę, to musimy podać jej źródło. Nie możemy użyć nazwy tabeli jako odwołania do źródła listy w taki sposób:

    Nie możemy też użyć nazwy kolumny tabeli[3]:

    Należy obejść to ograniczenie poprzez nadanie kolumnie nazwy zdefiniowanej. W tym celu otwieramy Menadżer nazw (ctrl+F3) i klikamy polecenie Nowy:

    Następnie nadajemy nazwę, a jako źródło odwołania podajemy nazwę kolumny z fundatorami:

    W tym wypadku gdybym wpisał tu nazwę tabeli (tbFundatorzy), wszystko zadziałałoby tak samo, ponieważ kolumna tbFundatorzy[fundatorzy] to jedyna kolumna w tej tabeli. Dobrą praktyką jednak jest odwołać się tylko do kolumny. Nie możemy przecież wykluczyć, że w przyszłości rozszerzymy tabelę tbFundatorzy o nowe kolumny, gdyby miała nam ona służyć do przechowywania np. jakichś informacji o fundatorach.

    Teraz możemy ponownie uruchomić polecenie Poprawność danych, wybrać listę jako kryterium i podać jako źródło listy utworzoną właśnie nazwę zakresu:

    Źródło listy należy zawsze podawać ze znakiem równości na początku.

    Teraz w kolumnie tbWkłady[fundator] można wprowadzać tylko dane pochodzące z listy fundatorów. Wygląda to tak:

    Przycisk rozwijania listy pojawia się po wybraniu danej komórki (kliknięciem lub klawiszami kursora z klawiatury).

    Nasze źródło danych jest zakresem dynamicznym. Jeśli zechcemy do naszej symulacji fundacji rodzinnej dodać kolejnych fundatorów, to rozszerzy się także lista rozwijana. Zobaczmy. Dopiszmy więc kolejnego fundatora. Wystarczy stanąć pod tabelą tbFundatorzy wpisać nazwę i zatwierdzić klawiszem Enter lub Tab.

    Lista rozwijana natychmiast zawiera tego kolejnego fundatora. Możemy go więc wybierać podając kolejne składniki mienia fundacji.

    Alfabetyczne sortowanie listy rozwijanej

    W podanym tu przykładzie alfabetyczne ułożenie elementów listy nie ma istotnego znaczenia, ponieważ elementów tych nie jest dużo. Ponadto, alfabetyczne ułożenie elementów jest nieistotne dla użytkownika, który wie co chce wpisać, czyli np. zna imiona i nazwiska fundatorów. Wystarczy bowiem zacząć wpisywać litery, aby program zaczął podpowiadać pasujące elementy listy. Jeśli natomiast elementów byłoby dużo, a użytkownik nie znałby z góry co chce w danym wierszu tabeli wpisać, to przydałoby się posortować alfabetycznie te elementy.

    Żeby wykonać takie sortowanie wystarczy w tabeli zawierającej elementy (w naszym przykładzie jest to tabela tbFundatorzy) kliknąć polecenie sortowania, które jest w menu dostępnym po kliknięciu przycisku w nagłówku kolumny. Każdorazowe sortowanie tabeli po każdym dopisaniu kolejnego fundatora może być jednak kłopotliwe. Możemy więc zaprogramować arkusz w taki sposób, by lista rozwijana była uporządkowana alfabetycznie, nawet gdy tabela tbFundatorzy nie jest posortowana. W tym celu należy utworzyć pośredni krok w odwołaniu do źródła listy. Robimy to następująco.

    W ustalonej kolumnie[4] tworzymy formułę tablicową:

    =SORTUJ(tbFundatorzy[fundatorzy])

    Formuła tablicowa to taka, która w wyniku zwraca tablicę, czyli zbiór wartości. Powoduje to rozlanie elementów tablicy do komórek położonych poniżej. Dlatego właśnie musimy znaleźć kolumnę, w której nic innego poniżej nie umieściliśmy, ani nie umieścimy. Teraz wystarczy w Menadżerze nazw podmienić zawartość nazwy. Załóżmy, że wspomnianą formułę tablicową umieściliśmy w osobnym arkuszu o nazwie setup, w komórce B3. A zatem edytując nazwę fundatorzy, podając odwołanie w polu Odwołuje się do: zamiast

    =tbFundatorzy[fundatorzy]

    wpisujemy:

    =setup!$B$3#

    Znak # na końcu jest tu niezbędny, bo oznacza odwołanie do dynamicznej tablicy, czyli nie tylko komórki B3, ale i do tych komórek, na jakie rozlewa się tablica zwracana formułą umieszczoną w komórce B3. Równie niezbędne są znaki $.

    Od teraz elementy na liście rozwijanej zawsze będą ułożone alfabetycznie i nie musimy tego poprawiać przy każdym uzupełnieniu listy w tabeli tbFundatorzy.

    Liczby

    Skoro w naszej sprawie należy podawać kwoty, możemy też zadbać, by nasi współpracownicy (ci gorzej znający się na Excelu) do kolumny wartość nie wpisywali np. „5000 zł” albo „5.000”, bo to są teksty, a nie liczby i Excel tego nie zsumuje. W tym celu dla kolumny wartość należy ustawić poprawność danych wybierając jako kategorię Dziesiętne, a jako minimum 0.

    Teraz w tej kolumnie będzie można umieszczać tylko kwoty wyższe od 0, także z groszami. Aby nasz współpracownik nie zdziwił się dlaczego nie może wpisać „100.000 zł”, możemy zaprogramować komunikat wejściowy lub alert o błędzie:

    Teraz pozostaje zaprogramować arkusze, które zwrócą wielkość obciążeń podatkowych dla poszczególnych beneficjentów świadczeń w zależności od ich relacji rodzinnych z fundatorami. Nie jest to miejsce by tłumaczyć, jak to zrobiłem, bo to poza zakresem tematu tego odcinka. Wyjaśnię tylko, że trzeba zacząć od obliczenia proporcji w spisie mienia fundacji (art. 28 ustawy), które będą mieli poszczególni fundatorzy.

    Proponuję wykorzystać do tego tabelę tbFundatorzy, bo z założenia każdy fundator jest w niej wymieniony tylko raz. Dostawmy więc z prawej strony kolejną kolumnę, nazwijmy ją np. proporcja i umieśćmy w niej formułę:

    =SUMA.JEŻELI(tbWkłady[fundator];[@fundatorzy];tbWkłady[wartość])/SUMA(tbWkłady[wartość])

    Potem tylko trzeba sformatować komórki w tej kolumnie na Procentowe:

    I proszę:

    Oczywiście do celu w postaci rzetelnej symulacji świadczeń i obciążeń podatkowych prowadzi nas jeszcze długa droga. Przydałoby się też zaokrąglanie niektórych wyników, np. funkcją ZAOKR. Ale to już byłby temat na inny wpis.


    [1] O którym mowa w art. 28 ustawy o fundacjach rodzinnych.

    [2] Na przykład wspólnota mieszkaniowa, w której niektórzy właściciele mogą mieć więcej niż 1 lokal.

    [3] W tym wypadku jest to jedyna kolumna, ale i tak ma ona swoją nazwę.

    [4] Zgodnie z zaleceniem, o którym pisałem przy nazwach zdefiniowanych, najlepiej zrobić to w osobnym specjalnym arkuszu.

  • Koszty procesu – opłata

    W tym video pokazuję jak zacząć budować własny prosty arkusz do obliczenia kosztów procesu. Zaczynamy od opłaty od pozwu. W następnych odcinkach będą: koszty zastępstwa procesowego, stosunkowe rozliczenie kosztów i wykończenie arkusza, żeby lepiej wyglądał.

    A tymczasem pokazuję m.in., jak wstawić tabelę, ustalić nazwy zdefiniowane komórek i jak użyć królowej formuł, czyli WYSZUKAJ.PIONOWO do obsługi kosztów procesu.

  • Tabele (łączenie spółek)


    Excel dla prawników to także umiejętność tworzenia sobie narzędzi pracy, które wykorzystasz potem do kolejnej sprawy, projektu, orzeczenia… A tabele właśnie temu między innymi służą. A także:

    • ułatwiają sumowanie kolumn,
    • ułatwiają pisanie formuł,
    • umożliwiają sprawne dostosowanie arkusza do kolejnej sprawy,
    • mają zdefiniowane właściwości graficzne, które możesz modyfikować.

    Na poniższym przykładzie pokażę dlaczego warto używać tabel i jak to robić.

    Co nam grozi gdy nie używamy tabel

    Przygotujmy arkusz do symulacji:

    • kwot udziałów po połączeniu spółek z o.o. przez przejęcie (to będą nasze wyniki)
    • w zależności od parytetu wymiany, wartości nominalnych udziałów i liczby udziałów przypadających na poszczególnych wspólników (nasze dane wejściowe).

    Najpierw przygotowujemy zestaw danych podstawowych i nadajemy im nazwy zdefiniowane.

    Wskaźniki parytetu wymiany wyświetlają się jako potencjalnie liczby niecałkowite, bo jeśli liczba udziałów w spółce przejmowanej jest podzielna np. przez 5, to wymiana może nastąpić według parytetu 1 do 1,2.

    Wygląda to tak:

    Komórki od E2 do E5 mają nazwy zdefiniowane:

    Następnie tworzymy takie oto trzy tabelki (nie będące tabelami w znaczeniu przyjętym w Excelu):

    To samo w trybie wyświetlania formuł wygląda tak:

    Niby wszystko jest w porządku. Arkusz pełni swoją rolę, tj. zwraca nam wyniki (to co na powyższym zrzucie wyświetla się kursywą) w zależności od danych wejściowych (czcionka zwykła).

    Ale do czasu. Przyjmijmy optymistycznie, że arkusz bez większych problemów spełnił swoją rolę do ukończenia danego projektu. Jednak zapewne w swojej praktyce zawodowej co jakiś czas wracasz do podobnych tematów. W następnym projekcie zmienią się nie tylko dane wejściowe, ale inny może być i sam układ tych danych. Przede wszystkim zmienić się może liczba wspólników w każdej ze spółek. Co to będzie oznaczało? Do każdej tabelki trzeba będzie dostawić tyle wierszy o ile jest więcej wspólników. Albo odjąć tyle wierszy, o ile jest ich mniej.

    Załóżmy, że w nowym projekcie te liczby się powiększyły, tj. w obu spółkach jest po 1 wspólniku więcej. Dodajemy więc po 1 wierszu do każdej tabelki i w nowych wierszach albo wprowadzamy nowe dane wejściowe, albo kopiujemy formuły z komórek powyżej. Otrzymujemy coś takiego:

    Czemu nas to nie urządza? Przyjrzyjmy się. Nowe wiersze to 16, 23 i 31. W komórce C31 formuła jest ewidentnie nieprawidłowa, co widać, bo odsyła do pustej komórki (C25). Zielony trójkącik w rogu komórki C24 sygnalizuje nam, że i tu jest coś nie tak. I rzeczywiście, tutaj formuła nie sumuje nam wartości z całej kolumny. Ten sam problem jest w komórkach D17, C32 i D32, mimo że Excel (niecnota!) nie oznaczył już tego zielonym trójkącikiem.

    Nie tak miało być! Zamiast bezproblemowo korzystać z arkusza przygotowanego przy poprzednim projekcie, musimy teraz od nowa dłubać w formułach. A przy tym sytuacja wymaga czujności. Musimy skontrolować każdą formułę, bo, jak widać, nie możemy liczyć na podpowiedzi programu.

    Ale tak naprawdę sami się wmanewrowaliśmy w tą sytuację. Ach gdybyśmy od razu używali tabel…

    Tworzenie tabeli

    Sprawdźmy więc co by było. Ale zamiast budować arkusz od nowa, przekopiujmy wszystkie 3 tabelki do kolumn H­–J arkusza. Zawartość komórek z formułami od razu wyczyśćmy, skoro były tam błędy. Wyczyśćmy wszystkie, napiszemy formuły od nowa i przekonamy się o ile to będzie łatwiejsze i bardziej efektywne. Usuńmy też wiersz, w którym przechowywaliśmy sumy, bo sumowanie kolumn zrobimy sprytniejszym sposobem niż poprzednio.

    Uzyskujemy więc taki stan wyjściowy do dalszej pracy:

    Następnie każdą tabelkę przekształcamy w tabelę. Zaznaczamy ją w całości i na karcie „Narzędzia główne” wybieramy polecenie „Formatuj jako tabelę” (albo prościej: wciskamy ctrl+T):

    Uwaga: Skoro już mamy ustalone nagłówki, to opcję
    „Moja tabela ma nagłówki” zostawiamy zaznaczoną.

    Teraz zamiast 3 niezdefiniowanych zakresów komórek, które były wyróżnione na arkuszu tylko wizualnie, otrzymujemy 3 tabele, czyli 3 zakresy wstępnie zdefiniowane. Każda tabela ma bowiem od chwili jej utworzenia jakąś nazwę. Excel domyślnie nadaje nowej tabeli nazwę „Tabela1”, „Tabela2”, itd. Dobrą praktyka jest, aby od razu nadać tabeli taką nazwę, która będzie cokolwiek mówiła o jej zawartości. Za chwilę zobaczymy do czego to się przyda. W tym celu trzeba stanąć na danej tabeli (zaznaczyć jako aktywną którąkolwiek komórkę w obrębie tabeli). Wówczas wyświetli nam się karta „Projekt tabeli”. W sekcji „Właściwości” zmieniamy nazwę.

    Dla dociekliwych: nazwy tabel można zmieniać też w menadżerze nazw, dostępnym na karcie „Formuły” (albo po wciśnięciu skrótu ctrl+F3).

    Kolejna dobrą praktyką jest nadawać nazwy obiektom tej samej kategorii w sposób schematyczny. A zatem na przykład niech nazwy wszystkich tabel zaczynają się od liter „tb”.

    Domyślny styl tabeli (jej wygląd graficzny) to białe i niebieskie naprzemienne pasy. Możesz go zmienić w sekcji „Style tabeli”.

    W sekcji „Opcje stylu tabeli” od razu dodajmy też wiersz sumy:

    W danej tabeli pojawia się dodatkowy wiersz – wiersz sumy. W wierszu sumy w odpowiedniej komórce wybierzmy z listy rozwijanej jaki wynik chcemy uzyskać. W naszym przypadku niech to będzie suma w ostatniej kolumnie każdej tabeli. Program sam wstawia funkcję SUMY.CZĘŚCIOWE, której omówienie może zostawmy na inną okazję.

    Otrzymujemy coś takiego:

    Sumowanie kolumn

    Mamy więc już pierwszą nauczkę: jeśli chcemy zsumować wartości z całej kolumny, nie używajmy do tego osobnego wiersza z własnymi (wpisywanymi „z palca”) formułami, które przy kolejnym użyciu arkusza trzeba będzie naprawiać.

    Zamiast tego, w projekcie tabeli dostawmy wiersz sumy, w którym program automatycznie wstawia formuły zawierające odwołania strukturalne, czyli wyglądające tak:

    Dzięki odwołaniom strukturalnym formuły zawsze zwrócą prawidłowy wynik, niezależnie od dostawianych lub ujmowanych wierszy tabeli.

    Wiersz sumy można ustawić tylko na dole kolumny. Jeśli sumy kolumn (albo jakieś inne obliczenia ich dotyczące, np. średnie) są ci potrzebne u góry, zrezygnuj z wiersza sumy, a odpowiednie formuły umieść w komórkach poza tabelą – nad nagłówkami.

    W tabeli łatwiej pisać formuły

    A teraz gwóźdź programu. W pierwszej tabeli, czyli tej dotyczącej spółki przejmowanej, stań na pierwszej od góry wolnej komórce ostatniej kolumny (J13) i wpisz:

    =[@udziały]*nom_B

    A nawet nie musisz całego tego ciągu znaków wpisywać albo kopiować z tego tekstu. Podpowiem tak:

    1. stań na J13
    2. wciśnij =
    3. wciśnij strzałkę w lewo
    4. wciśnij gwiazdkę
    5. wpisz litery „no”
    6. z listy rozwijanej wybierz naszą uprzednio już zdefiniowaną nazwę nom_B i wybór zatwierdź klawiszem Tab
    7. wciśnij Enter.

    Jeśli w pkt 6) wybrałeś pozycję z listy za pomocą strzałek kursora na klawiaturze zamiast myszą, to całą operację przeprowadziłeś bez użycia myszy. Oczywiście, jeśli wolisz mysz od klawiatury, możesz jej używać; wystarczy np. w pkt 3) kliknąć kursorem myszy na komórkę I13. I to wszystko. Okazuje się, że nie trzeba tej formuły kopiować do wszystkich komórek kolumny, bo następuje tzw. autouzupełnianie. Zadziała ono również gdy w gotowej już formule cokolwiek zmienisz. Jeśli nie chcesz aby autouzupełnianie w danym przypadku zadziałało (np. chcesz aby w jednej komórce była inna formuła niż w pozostałych z tej samej kolumny), to po wprowadzeniu formuły enterem uruchom polecenie cofnięcia edycji, czyli kliknij ikonkę

    – na pasku narzędzi Szybki dostęp albo wciśnij ctrl+Z. Program cofnie wówczas tylko autouzupełnianie. Jeśli cofniesz edycję raz jeszcze, to cofnie się też zatwierdzenie formuły.

    Jeśli w danej kolumnie raz już zrezygnujesz z autouzupełniania, to formuła kolumny obliczeniowej będzie niespójna i kolejne zmiany w tej kolumnie nie uruchomią autouzupełniania.

    Teraz pozostaje nam wprowadzić podobną formułę do komórek J22 i J30, czyli do trzecich kolumn w kolejnych tabelach:

    =[@udziały]*nom_A

    Natomiast dla drugiej kolumny ostatniej tabeli proponuję taką formułę:

    =X.WYSZUKAJ([@wspólnik];tbPrzejmowana_B[wspólnik];tbPrzejmowana_B[udziały];0)*(wym_A/wym_B)+X.WYSZUKAJ([@wspólnik];tbPrzejmujaca_A[wspólnik];tbPrzejmujaca_A[udziały];0)

    Zwróć uwagę, że nie ma w niej żadnego odwołania do komórki czy zakresu przez odwołanie do współrzędnych komórek. Dzięki temu formuła jest bardziej czytelna.

    Nazwy zakresów można wprowadzać do formuły albo zaznaczając te zakresy myszą (bądź klawiaturą, do czego służą skróty crtl+spacja oraz shift+spacja), albo wpisując z klawiatury początkowe litery nazwy i wybierając je z listy rozwijanej, tak jak to przedstawiłem wyżej. Jeśli odsyłasz do kolumny w tabeli, a nie do całej tabeli, to po wprowadzeniu nazwy tabeli wpisz nawias kwadratowy otwierający [ i wtedy otrzymasz listę rozwijaną z nazwami kolumn i innych obiektów tabeli.

    Tabele to dynamiczne zakresy danych

    Oznacza to, że zmiany rozmiaru tabeli nie wywołują problemów z formułami, które zawierają odwołania strukturalne. Pokażmy na przykładzie. Załóżmy, że przy kolejnym wykorzystaniu arkusza spółka przejmowana ma tylko 3 wspólników, a więc:

    1. stań na komórce H16
    2. wciśnij shift+spacja
    3. wciśnij ctrl+-

    Formuły zwracają błąd tylko w ostatnim wierszu ostatniej tabeli. Dlaczego? Bo tylko tam było odwołanie do komórki wskazanej przez współrzędne arkusza:

    =H16

    Poniżej napiszemy formułę, dzięki której obejdziemy ten problem. A tymczasem wystarczy ów wiersz skasować (tą sama procedurą co wyżej, tylko zaczynając od komórki H32). Gdy przyjdzie potrzeba w przyszłości, wystarczy dostawić brakujące wiersze w tabeli. Uwaga: Program automatycznie uzupełni wówczas formuły w nowych wierszach.

    Rozmiarem tabeli można sterować także za pomocą ikonki w jej prawym dolnym rogu:

    W ten sposób będziesz chciał zapewne dostawić po 1 kolumnie do każdej tabeli, żeby obliczać wartości rynkowe udziałów, a na koniec także dopłaty wyrównawcze na podstawie art. 499 § 1 pkt 2 k.s.h.

    Aby dostawić kolumnę wystarczy w pierwszej wolnej komórce obok nagłówka ostatniej kolumny zacząć wpisywać nazwę nagłówka tej nowej kolumny. Można też nową kolumnę dostawić w środku, można kolumny przestawiać przeciągając kursorem myszy.

  • Nazwy zdefiniowane (kapitał spółki)

    Pracuj zawsze dla kogoś

    Gdy robisz coś w Excelu, zazwyczaj robisz to tak, aby mogły z tego skorzystać inne osoby. Na przykład koledzy z zespołu, pełnomocniczka kontrahenta, księgowy klienta…

    A nawet jeśli robisz to tylko dla siebie, nie szkodzi. Postępuj tak, jak gdybyś ty z przyszłości (no bo może wrócisz do tego skoroszytu za kilka miesięcy) był inną osobą. Skądinąd, czyż nie tak właśnie z nami jest?

    Wyobraź sobie więc, że inna osoba (np. ty sam z przyszłości) będzie chciała sprawdzić w jaki sposób obliczyłeś pewne wartości.

    =(L10+F13)/2

    Taki zapis formuły nie uniemożliwia ustalenia „co autor miał na myśli”, ale nieco utrudnia. A teraz wyobraź sobie, że arkusz jest całkiem rozległy, a formuł do sprawdzenia jest wiele i nie są tak proste jak ta wyżej.

    Jak więc uczynić formułę bardziej czytelną?

    Tak:

    =(wycena+wart_bilansowa)/2

    To jest ta sama formuła, ale z użyciem nazw zdefiniowanych.

    Jak się tworzy nazwy zdefiniowane?

    Bardzo łatwo. Wystarczy stanąć na danej komórce i kliknąć w pole nazwy.

    Pole nazwy możesz edytować po kliknięciu w nie myszą albo po wciśnięciu kombinacji Alt+F3.

    A co jeśli po jakimś czasie chcesz zmienić nazwę?

    W tym celu użyj menadżera nazw na karcie formuły. Możesz go też otworzyć kombinacją ctrl+F3.

    Po zmianie nazwy Excel nie tylko przypisze nową nazwę do danej komórki, ale i podmieni nazwę w tych formułach, w których już została zastosowana.

    Nazwy zdefiniowane – wygoda

    Gdy piszesz formułę i chcesz w danym jej miejscu wstawić zmienną, która ma nazwę, wystarczy zacząć ją wpisywać i edytor sam podpowiada nazwy (w tym nazwy funkcji). Wybór z listy rozwijanej zatwierdzasz podwójnym kliknięciem albo klawiszem Tab.

    Nazwa zdefiniowana działa jak odwołanie bezwzględne, czyli adres komórki „zablokowany dolarkami”.

    Uwaga: jeśli jest otwartych kilka skoroszytów to program przy wprowadzaniu formuły podpowiada nazwy zdefiniowane dostępne we wszystkich otwartych w danej chwili skoroszytach.

    Aby przejść do komórki zawierającej daną nazwę wciśnij F5 i wybierz z listy nazw zdefiniowanych i nazw tabel.

    Więcej argumentów za stosowaniem nazw zdefiniowanych

    Używając nazw zdefiniowanych udowadniasz, że jesteś nastawiony na potrzeby innych osób. Dlaczego?

    Otóż Excel to takie uproszczone środowisko programistyczne. Pisząc formuły tak naprawdę programujesz.

    Zaskoczony? A przecież działa to na tych samych zasadach, co w innych środowiskach. Komórki arkusza to przecież nic innego jak przedstawione w formie tabeli zmienne, a ich adresy to nic innego jak nazwy zmiennych. Duży arkusz (podobnie jak długi kod) powinien być zaś czytelny. Co komu po takich nazwach zmiennych jak L13 albo G88?

    Jeśli więc tworzysz arkusz do symulacji wariantów jakiejś transakcji, rozważ proszę, że twój schemat symulacji (czyli tak naprawdę kod programu) niekoniecznie jest idealny i uniwersalny. Ktoś kiedyś może chcieć go zmienić, zaprogramować inne formuły. A może ulepszyć, dodać coś od siebie? Albo po prostu skontrolować. W każdym przypadku najpierw ta osoba musi zrozumieć: co ty miałeś na myśli. Na przykład – z jakich to składników lub czynników uzyskałeś ilość udziałów, które powstaną po podwyższeniu kapitału spółki. Na pewno bardziej to ułatwią czytelne formuły z nazwami zdefiniowanymi, zamiast z adresami jakichś odległych komórek.

    Wskazówka: osobny arkusz do definiowania nazw

    W skoroszytach, które mogą podlegać późniejszym licznym przebudowom, zwłaszcza polegającym na duplikowaniu arkuszy, warto od razu założyć osobny arkusz, który z założenia nie będzie podlegał duplikowaniu, a w którym będą przechowywane nazwy zdefiniowane. Dlatego, że zduplikowanie arkusza, w którym są nazwy zdefiniowane, spowoduje duplikacje także tych nazw. W arkuszu wzorcowym będzie nazwa, której zakresem zastosowania może być cały skoroszyt, a w arkuszu utworzonym przez kopiowanie będzie nazwa, której zakresem zastosowania będzie tylko ten arkusz. Obie będą jednobrzmiące. To może wywołać bałagan i niepotrzebne zamieszanie przy przeglądzie nazw zdefiniowanych i zarządzaniu nimi. Dobrą praktyką będzie zatem utworzenie specjalnego arkusza, w którym będą przechowywane nazwy zdefiniowane.