Excel w wersji 365 jest prawdziwym game-changerem! Dlaczego? Bo otrzymujemy dostęp do funkcji, które wynoszą budowę formuł na całkiem inny poziom. Po pierwsze, złożone megaformuły możemy zastąpić krótszymi konstrukcjami. Po drugie, w wielu przypadkach, nie musimy już pisać własnych funkcji VBA (tzw. User-Defined Function). Po trzecie, niektóre funkcje mogą wykonywać operacje na zakresach – są […]
Ostatni niepusty wiersz
Ostatni niepusty wiersz jest jednym z najbardziej popularnych tematów w całym VBA. Sprawa z pozoru wydaje się banalnie prosta. Jak się jednak przekonamy, żadne z siedmiu zaproponowanych rozwiązań nie spisuje się w 100% idealnie. Potencjalne problemy Zastanówmy się najpierw dlaczego temat skutecznego wyznaczania ostatniego niepustego wiersza jest w ogóle taki ważny… Powodów jest kilka. 1 […]
Lista zależna na formularzu
Użytkownicy Excela często używają sprawdzania poprawności do tworzenia list kaskadowych. Pierwsza lista zwykle przechowuje unikatowe wpisy np. marki aut. Po wybraniu konkretnej wartości (marki), do drugiej listy ładowane są przypisane do niej elementy (np. modele aut tej marki). Taka lista zależna jest dość łatwa do zrobienia także w VBA. Podział drużyn w NBA Jako, że […]
Obliczanie dniówki
Excel jest świetny w obliczaniu czasu pracy i wynagrodzeń pracowników. Niedawno napisałem o formule, która pozwala w prosty sposób obliczyć dniówkę dla różnych stawek godzinowych. Obliczanie dniówki można jednak skomplikować. Wystarczy, że podejdziemy do tematu bardzo skrupulatnie, licząc czas pracy z dokładnością co do minuty. Pełne godziny robocze Niedawno napisałem artykuł o tym, jak wyliczyć […]
Kłopoty z LBound
Pewnym problemem VBA i innych języków programowania jest to, że odliczanie często rozpoczynamy od 0, a nie od 1. W przypadku tablic, pozycją pierwszego elementu (z ang. LBound) domyślnie jest właśnie zero. Niesie to ze sobą wiele zagrożeń, o których musimy pamiętać. Od duplikatów do unikatów Jedną z najczęściej używanych przeze mnie funkcji VBA jest […]
Kalendarz na formularzu – alternatywa
VBA nie posiada kontrolki MSForms z kalendarzem, która działałaby dla każdej wersji programu Excel. Niestandardowy DTPicker potrzebuje wersji 32-bitowej – w wersji 64-bitowej kontrolka zniknie z UserForma. Jak zatem stworzyć kalendarz na formularzu, który będzie działać niezależnie od wersji Excela? Jak wybrać datę i przekazać ją do arkusza? W tym tekście opiszę pewien sposób. Funkcja […]