• Zapisz się do newslettera, aby otrzymywać powiadomienia o nowościach na blogu
    Zapisując się, wyrażasz zgodę na przesyłanie Ci informacji o nowościach na tym blogu. Zgodę możesz w każdej chwili wycofać (szczegóły).

Przeszukiwalna lista rozwijana – formuły (Office 365)

Czyli trochę o nowych dynamicznych tablicach

Już w lipcu 2020 wszyscy posiadacze subskrypcyjnej wersji Office’a (Office 365) będą mogli korzystać z nowej funkcjonalności Excela: dynamicznych tablic. Powiem tak: to jest REWOLUCJA. Od tej pory mega-skomplikowane formuły będzie można zamienić na kilka przyjemnych i łatwych w użyciu funkcji. Również to, co do tej pory było wręcz niemożliwe do wykonania – przy pomocy dynamicznych funkcji tablicowych będzie bardzo proste!

Nie trzeba daleko szukać – niedawno pokazywałam sposób na stworzenie przeszukiwalnej listy rozwijanej, wykorzystujący formularz użytkownika i makra oczywiście (VBA). Artykuł ten możesz przeczytać tutaj. Opisane w nim rozwiązanie bardzo mi się podoba – sama stosuję je w swoich plikach, jak również w plikach, które tworzę dla klientów.

Wiem jednak, że nie wszyscy chcą korzystać z makr. W takiej sytuacji potrzebne jest rozwiązanie oparte np. na formułach. I takie właśnie dzisiaj pokażę. Efekt będzie taki:

MalinowyExcel Przeszukiwalna lista rozwijana 365 Wynik

Pokażę Wam rozwiązanie wzorowane na propozycji Leili Gharani, której kanał na YT bardzo Wam polecam.

Zaczynamy!

Czytaj dalej

Lista rozwijana z uprawnieniami cz. 2 (VBA)

Czyli jeśli góra zatwierdziła – nie można edytować!

W poprzednim wpisie pokazywałam jak zahasłować wybrane zakresy komórek w arkuszu tak, aby mogły je edytować jedynie osoby, które znają hasło. Dzisiaj pokażę kod VBA, który nie pozwoli edytować komórek, jeśli konkretna komórka została już uzupełniona.

W naszej sytuacji akceptowania warunków zamówień będzie to działać tak, że jeśli Kierownik Kontroli Kredytowej (KKK) zaakceptuje umowę (zaakceptuje = Tak), osoby wcześniej akceptujące (Dział Obsługi Klienta (DOK) i Dyrektor Sprzedaży (DS)) nie będą mogli już zmieniać swoich decyzji. Czyli, krótko mówiąc, zamówienie zostanie finalnie zaakceptowane.

Ma to działać tak:

MalinowyExcel Listy rozwijane z uprawnieniami cd VBA Wynik

Zabierzmy się więc za stworzenie takiego rozwiązania.

Czytaj dalej

Przeszukiwalna lista wyboru z podpowiedziami (formularz VBA)

Czyli sposób na łatwe szukanie klienta z VBA

Temat, o który już dawno mnie pytaliście, ale przyznaję szczerze: nie chciało mi się za niego zabierać :). W końcu jednak nadszedł czas! Obecnie, z nowym mechanizmem przeliczania w Excelu 365, zrobienie czegoś takiego za pomocą formuł nie jest już wielkim wyzwaniem. Natomiast wyzwaniem jest to, że nadal nie wszyscy mają Excela w tej wersji. I szybko to się nie zmieni… Dlatego chciałabym, aby rozwiązanie było możliwe w każdej wersji Excela.

Ok, ale o co w ogóle chodzi?

O przeszukiwalną listę. Chciałabym napisać rozwijaną, ale to za bardzo ograniczyłoby mi możliwości rozwiązania, choć na pewno byłoby najbardziej użyteczne.

Chodzi o zrobienie takiej listy wyboru np. klientów, aby po wpisaniu kilku liter (niekoniecznie początkowych), Excel wylistował klientów, zawierających wpisane litery. Z nich użytkownik wybiera klienta, który ma być wpisany do komórki.

Chodzi o coś takiego:

VBA Przeszukiwalna lista klientów

 

Czyli po dwukrotnym kliknięciu w kolumnie z klientami pojawia się formularz, na którym możemy wpisać szukaną frazę. Nasz wybór zostanie wpisany do aktywnej komórki arkusza.

Zadanie do najłatwiejszych nie należy, rozwiązanie będzie złożone i długie (dlatego tak długo zwlekałam ;)). Ale damy radę! Do dzieła!

Czytaj dalej

Zapisz PDF z taką samą nazwą co plik Excela (VBA)

Czyli wystarczy mała podmianka w kodzie

Prawie dwa lata temu napisałam artykuł, gdzie pokazywałam jak z pliku Excela wygenerować plik PDF i zapisać go pod taką nazwą, jak wartość wybranej komórki w arkuszu. Wszystko to za pomocą przycisku. Napisałam w tym celu makro, które szczegółowo omówiłam w tym artykule.

Niedawno zapytaliście mnie jednak, jak zrobić, aby wygenerowany plik nazywał się dokładnie tak samo, jak plik Excela, z którego powstał. Brzmi strasznie, ale w rzeczywistości jest prościutkie. Wymaga bowiem jednej małej modyfikacji w kodzie i ją właśnie opiszę w tym artykule.

Formatka wygląda identycznie, jak w poprzednim artykule:

Formatka

Formatka

Do dzieła!

Czytaj dalej

Graficzne przyciski uruchamiające makra

Czyli prosty sposób na skuteczną komunikację z użytkownikiem

Makra możemy wywoływać na wiele sposobów. Z części z tych sposobów korzystamy na etapie tworzenia kodu, niektóre dzieją się same (zdarzenia), a inne – mają być wygodne dla użytkownika. Do tych z pewnością należą skróty klawiszowe i… przyciski. Zazwyczaj korzystamy z formantów formularza (pisałam o tym tutaj). Metody super, bo działają.

Jeśli jednak chcesz pójść o krok dalej (a zakładam, że skoro czytasz ten artykuł, to chcesz ;)), warto zamiast zwykłego przycisku z napisem (np.: Drukuj), użyć przycisku graficznego. Jest to o tyle fajna metoda, że użytkownik nie musi się wczytywać w tekst na przycisku (a takie wczytywanie jest to szczególnie uciążliwe, gdzie przycisków jest kilka!), tylko rzuca okiem na grafikę i od razu wie co robi dany przycisk.

Przykład:

 

Najlepsze jest to, że takie graficzny przycisk zrobimy od początku do końca sami, bez jakichś specjalnych umiejętności – cały czas będziemy korzystać z wbudowanych możliwości Excela. Nie musimy angażować grafika komputerowego :).

Czytaj dalej

Nazwy arkuszy na liście rozwijanej, generowanej automatycznie

Czyli zdarzenie arkusza tworzące listę arkuszy

Zadanie na dziś to stworzenie listy rozwijanej, zawierającej nazwy arkuszy w pliku. Powiedzmy, że oddziały naszego sklepu są w różnych miastach, każde miasto ma swój arkusz. My chcemy do głównego arkusza pobrać sumę sprzedaży z wybranego miasta. Interesujące nas miasto (arkusz) chcemy wybrać z listy rozwijanej, i na podstawie naszego wyboru ma się obliczyć suma sprzedaży z tego miast. O tak:

Jak już będziemy mieli nazwę arkusza to dalej pikuś – kiedyś już to opisywałam. Natomiast samo uzupełnienie listy – tutaj bez VBA się nie obejdzie – będą pętle, liczniki i inne bajerki, więc do dzieła!

Czytaj dalej

Zaproszenie na WEBINAR: Nagrywanie makr – wstęp

Zapraszam Cię na bezpłatny webinar Nagrywanie makr – wstęp. Na webinarze wkroczymy w cudowny świat VBA: pierwszym przystankiem będzie nagrywanie makr. Pokażę Ci, że nagrywając makra można stworzyć rozwiązania dynamiczne, niezależne od rozmiaru zakresów danych. Wystarczy znać możliwości… Excela! Co się da nagrać, czego nie, jak sobie usprawnić żmudną pracę dzięki nagranym makrom – oto czym będziemy się zajmować.

Webinar odbył się 26 czerwca 2019 roku na żywo. Jego nagranie można kupić tutaj (39 zł). Do webinaru dołączony jest komplet plików excelowych i notatka PDF

Do zobaczenia na kolejnym webinarze!

 

Treść nagłówka lub stopki na wydruku pobierana z komórki

Czyli dynamiczny nagłówek lub stopka

Dziś zadanie będzie proste – chcemy, aby tekst z komórki pojawił się w nagłówku lub w stopce na wydruku, np. niech to będzie nazwa klienta, dla którego drukujemy ofertę czy jakąś informację. Nie chce nam się zmieniać wartości bezpośrednio w nagłówku/stopce, tylko niech pobiera się ona z komórki (a ta przecież może być uzupełniana przez formułę, niekoniecznie przez nas). O tak:

Formatka

Użyjemy do tego zdarzenia skoroszytu, którego jeszcze na blogu nie pokazywałam…

Czytaj dalej

Korespondencja seryjna generująca oddzielne PDF-y

Czyli tworzenie wielu PDF-ów z jednej formatki

Podobny temat kiedyś już poruszałam na blogu, natomiast chodziło o stworzenie oddzielnych arkuszy dla pracowników, których informujemy o podwyżce. Tym razem też będziemy informować pracowników o podwyżce, natomiast dla każdego wygenerujemy oddzielny PDF z tą informacją. O tak:

Tylko troszkę zmodyfikujemy kod, który pokazywałam tutaj. Jedziemy!

Czytaj dalej

Dopisz dane do tabeli w chronionym arkuszu

Czyli auto-rozszerzanie tabeli…

Niby prosta rzecz: mamy chroniony arkusz, w nim obiekt tabela. Chcemy ją oczywiście uzupełniać i oczekujemy, że, jak to ma w zwyczaju tabela, powiększy się ona o dopisane poniżej niej dane.

A tu ZONK! Dane może i się dopisują (zakładając, że te komórki są odblokowane), ale tabela nie powiększa się w chronionym arkuszu!!!

Tak niestety się dzieje…

W tym artykule pospieszę na ratunek (koślawy co prawda – wolałabym, żeby tabele po prosu DZIAŁAŁY w chronionym arkuszu!). Pokażę makro, które spowoduje, że gdy user dopisze nowe dane bezpośrednio pod tabelą – powiększy się ona o ten dopisany rekord.

Dodatkowo, dzięki sprytnemu wykorzystaniu stylów sprawię też, że kopiowane formuły z kolumn obliczeniowych będą chronione, natomiast użytkownik nadal będzie mógł korzystać z list rozwijanych i wpisywać dane w odpowiednie kolumny tabeli.

Efekt będzie następujący:

Jedziemy!

Czytaj dalej