Funkcja Right()

Funkcja RIGHT() to jedna z funkcji tekstowych VBA. Zwraca wartość tekstową będącą określoną ilością ostatnich znaków tekstu.

Argumenty funkcji to:

    • String– zmienna typu tekstowego
    • Length – ilość znaków, które mają być zwrócone

Obydwa argumenty są obowiązkowe. Jeżeli któryś z argumentów będzie pusty, funkcja zwróci pusty ciąg czyli “”.

Odpowiednikiem funkcji Right() w Excelu jest funkcja PRAWY()


Kurs Excel - makra i VBA dla początkujących

 

Funkcja PRAWY()

Funkcja PRAWY() to jedna z funkcji tekstowych Excela. Zwraca wartość tekstową będącą określoną ilością  ostatnich znaków tekstu.

 

Argumenty funkcji to:

    • Tekst – zmienna typu tekstowego
    • Liczba_znaków – ilość znaków, które mają być zwrócone. Jeżeli argument zostanie pominięty, wstawiana jest wartość 1.

Odpowiednikiem funkcji w VBA jest funkcja Right()


Kurs Excel dla HR

 

Funkcja Left()

Funkcja LEFT() to jedna z funkcji tekstowych VBA. Zwraca wartość tekstową będącą określoną ilością pierwszych znaków tekstu.

 

Argumenty funkcji to:

    • String– zmienna typu tekstowego
    • Length – ilość znaków, które mają być zwrócone

Obydwa argumenty są obowiązkowe.

Odpowiednikiem funkcji  Left() w Excelu jest funkcja LEWY()


Kurs Excel programowanie w VBA

 

Funkcja LEWY()

Funkcja LEWY() to jedna z funkcji tekstowych Excela. Zwraca wartość tekstową będącą określoną ilością pierwszych znaków tekstu.

Argumenty funkcji to:

    • Tekst – zmienna typu tekstowego
    • Liczba_znaków – ilość znaków, które mają być zwrócone. Wartością domyślną jest 1

Odpowiednikiem funkcji VBA jest funkcja Left()


Kurs Analiza danych w Excelu dla początkujących

 

Daty świąt w kalendarzu

Jak w Excelu wyznaczyć daty świąt kalendarzowych? Można to zrobić samymi funkcjami, bez używania makr. I to także dla świąt ruchomych, nie mających swoich stałych dat w kalendarzu.

Po zmianie roku w komórce A1 (podświetlona na żółto), daty automatycznie się zmieniają, wskazując aktualizację dla danego roku.

 

Plik Excela widoczny na screenach można pobrać tu:

Daty świąt w kalendarzu

A zastosowane funkcje (przy założeniu, że w komórce A1 jest wpisany rok)  wyglądają tak:

Data Funkcja Nazwa święta
2022-01-01 DATA(A1;1;1) Nowy Rok
2022-01-06 DATA(A1;1;6) Trzech Króli
2022-04-17 ZAOKR.W.DÓŁ(DATA(A1;5;
DZIEŃ(MINUTA(A1/38)/2+56));7)-34
Wielkanoc
2022-04-18 A5+1 Wielkanoc
2022-05-01 DATA(A1;5;1) 1 Maja
2022-05-03 DATA(A1;5;3) 3 Maja
2022-06-05 A5+49 Zielone Świątki
2022-06-16 A5+60 Boże Ciało
2022-08-15 DATA(A1;8;15) Wniebowzięcie
2022-11-01 DATA(A1;11;11) Wszystkich Świętych
2022-11-11 DATA(A1;11;1) Święto Niepodległości
2022-12-25 DATA(A1;12;25) Boże Narodzenie
2022-12-26 DATA(A1;12;26) Boże Narodzenie

Większość dat z powyższej tabeli wyznaczona jest za pomocą funkcji Excela Data(Rok,Miesiąc,Dzień) i wynika wprost z kalendarza. Zdecydowanie bardziej skomplikowane jest wyznaczenie daty Wielkanocy, przypadającej w danym roku na pierwszą niedzielę po wiosennej pełni księżyca. Jest kilka algorytmów obliczania tej daty, zainteresowanych odsyłam tu:

Wikipedia: wyznaczanie daty Wielkanocy

A skoro coś daje się obliczyć, to z pewnością da się to zrobić także w Excelu. Wynik widoczny jest w tabeli. Powiązane z Wielkanocą są także daty Zielonych Świątków oraz Bożego Ciała, przypadające w 49 i 60 dni po jej dacie.

W praktycznych rozwiązaniach (np. różnego rodzaju grafikach) najczęściej stosuję taką tabelę w osobnym (często ukrytym) arkuszu i przy sprawdzaniu czy w danym dniu wypada święto, korzystam z funkcji Wyszukaj.Pionowo.


 

Edytor VBA

VBA czyli Visual Basic Application to okrojona wersja języka oprogramowania Visual Basic zaimplementowana przede wszystkim w aplikacjach Microsoft Office (Excel, Access, Word, Power Point), ale nie tylko. Można ją znaleźć także np. w Corel Draw.
Chcąc efektywnie pracować w Excelu, całkowicie zautomatyzować pracę, na pewno warto się zainteresować i poznać VBA. Tym bardziej, że pierwsze makra wystarczy po prostu nagrywać, nawet bez znajomości języka – i tak będzie działać. Kolejne kroki to z reguły modyfikacja nagranego makra, potem pierwsze próby napisania własnego…. To wciąga i wcale  nie wymaga super wiedzy informatycznej 🙂 

Na początek więc gdzie jest edytor VBA?

Zapraszam:

[VBA dla początkujących]


Dziwne linki w pliku Excela

W niektórych plikach Excela znajdują się łącza do innych plików. Najczęściej są to działania świadome i celowe, pozwalające np. na agregację danych z różnych arkuszy/skoroszytów. Czasem jednak zdarza się, że łączy teoretycznie nie powinno być, a jednak są widoczne. W dodatku ich odnalezienie jest trudne, nie można ich także przerwać.

Wprawdzie można wyłączyć aktualizację łączy, ale to tylko maskuje, a nie rozwiązuje problem. Brak komunikatów nie załatwia sprawy.
W tego typu przypadkach najczęściej okazuje się, że łącza do innego pliku wcale nie są wstawione bezpośrednio w komórkach, a nieco bardziej “zagnieżdżone”. Na początek warto więc sprawdzić:

    • ustawienia poprawności danych
      kto wie, czy na którejś z list nie ma odwołania do innego pliku?
    • formatowanie warunkowe
      tu też mogą być łącza

Tego typu sytuacje mogą się zdarzyć, gdy na przykład kopiujemy jakiś zakres komórek z innego skoroszytu, zapominając o tym, że jest tam zdefiniowana lista poprawności danych (przećwiczyłam to na sobie).
Jeśli plik jest mało rozbudowany – można to znaleźć ręcznie, choć czasem trzeba się naszukać. Gorzej, gdy plik zawiera wiele arkuszy, w każdym jest sporo danych i wykresów. Wówczas znalezienie takich odwołań może być naprawdę bardzo pracochłonne. Na takie przypadki jest specjalny tag: dodatek Billa Manville’a:

FindLink

Zainstalowałam go już ładnych kilka lat temu, zastosowałam i problem z dziwnymi łączami zniknął. Teraz dodatek nadal jest zainstalowany w moim Excelu, widać go na karcie Dodatki. I przydaje się.


Kurs Excel w Twojej firmie - praktyczne zastosowania

Data i czas to godzina

Nie byłabym sobą, gdybym co jakiś czas nie przypominała, że data i czas w Excelu to liczby! Zawsze, wręcz do znudzenia powtarzam to na każdym prowadzonym przez siebie szkoleniu, zarówno z  Excela jak i Accessa.  Ma to uzasadnienie – wyobraźnia użytkowników w różnych sposobach zapisywania dat jest niczym nie ograniczona i często generuje różne problemy.
To, co widzimy na ekranie – ładna data, gdzie nawet miesiąc jest wpisany słownie to tylko kwestia odpowiednio sformatowanego wyświetlania na ekranie, nadal jednak jest to liczba. Jej wielkość jest wyznaczona liczbą dni jakie upłynęły od “początku świata”, a konkretnie – od 1 stycznia 1900 roku.

Można się o tym przekonać samemu – w kolumnie A wstawiamy liczby, w kolumnie B – odniesienia do komórek z tego samego wiersza kolumny A (np. B1=A1, B2=A2 itd.). Kolumnę B formatujemy jako datę – efekt jak na screenie:

A co z czasem? Godzina to część ułamkowa – czyli to co po przecinku liczby. Godz. 8:00 to 1/3, godz.12:00 to 0,5 itd. Chcąc ustalić wartość takiego ułamka musimy podzielić ilość godzin/minut/sekund czasu przez  ilość godzin/minut/sekund całej doby.
Np. dla oznaczenia godziny 16:53:10 wyliczamy:
(16*60*60+53*60+10)/24*60*60=0,703588

Po sformatowaniu komórki jako czas:

Oczywiście, chcąc wpisać do komórki datę i/lub godzinę  nie musimy za każdy razem przeliczać ilości dni od 1 stycznia 1900r. czy obliczać ilość sekund w ciągu doby, byłby to absurd. Jednakże wystarczy wpisać datę w formacie RRRR-MM-DD (np.2022-04-01), aby Excel zobaczył, że to data i właściwie ją  zinterpretował i to niezależnie od wersji językowej i ustawień systemowych daty. Przy czasie prawidłowy format to: gg:mm:ss (np.12:03:23).
Trzymając się tym zasad, nie będzie problemu, gdyż Excel właściwie zinterpretuje typ danych.


Kurs Analiza danych w Excelu dla początkujących

%d bloggers like this: