Wyszukiwanie wartości w tabeli, zakresie

Jakiś czas temu napisałem wpis o wyszukiwaniu w tablicy dwu wymiarowej. Szukałem tam jaka była wartości sprzedaży Janka, produktów w kolorze czerwonym (na przykład).

Jeden z czytelników, zwrócił mi uwagę iż trafił na ten wpis szukając rozwiązania innego problemu. Może się zdarzyć, że będziemy chcieli znaleźć w tabeli adres pozycji o określonej wartości. Czyli gdzie znajduje się komórka o wartości, powiedzmy 358,82 (Janek, Czerwony). Na końcu wpisu znajduje się link do przykładowego pliku. Czytaj więcej...

To-Do – nowa aplikacja mobilna microsoft

Microsoft udostępnił w wersji „preview” nową aplikację do zarządzania zadaniami „To-Do”. Na pierwszy rzut oka wygląda bardzo przejrzyście. Od konkurencji ma się wyróżniać „inteligentnymi” algorytmami sugerującymi co wykonać w pierwszej kolejności. Osobiście do takiej „inteligencji” programów podchodzę sceptycznie.  W duecie komputer, użytkownik to ja staram się być tym inteligentnym.

Zaletą aplikacji jest integracja z outlookiem i interfejs webowy, przez co możemy zarządzać zadaniami przez telefon lub komputer. Czytaj więcej...

Skrót do szybkiego sumowania

Często używam Excel jako kalkulatora, przydaje mi się wtedy skrót alt + =. Po wpisaniu kilku wartości mogę je szybko zsumować.

Tablice VBA – Helion

Jeżeli już biorę się za recenzję, to żeby coś polecić. Dzisiaj chciałbym zwrócić uwagę na coś co mogę polecić bardzo szczerze, „Tablice informatyczne. VBA dla Excela” z Heliona. Oczywiście z takich tablic trudno będzie się nauczyć VBA, ale już na przykład po moim kursie takie tablice będą niezbędną pomocą dla programisty na każdym poziomie.

Nawet najbardziej doświadczony programista musi czasem poszukać w
internecie informacji o podstawowych elementach języka. Jak wyciągało się część ciągu znaków, jak pisze Case, jaki zakres ma Long itd. Co prawda można to szybko znaleźć w internecie, ale jeszcze szybsze (i wiarygodniejsze) są omawiane tutaj tablice. Czytaj więcej...

Kurs VBA – Klasy – konstruktory i desktruktory

Najważniejsze klasy modelu obiektowego Excela mają przypisane zestawy zdarzeń. Klasy użytkownika mają tylko dwa zdarzenia. Nazywają się konstuktor i destkruktor. Pierwsze uruchamia się w momencie inicjalizacji klasy, drugie w momencie jej deinicjalizacji.

Deklaruje się je następująco w module klasy:

Procedurę Class_Initialize nazywamy konstruktorem a procedurę Class_Terminate destruktorem.

Używam teraz moją klasę w krótkim programie.

Po uruchomieniu pokażą się kolejno trzy komunikaty: Czytaj więcej...

UDF – formuły z funkcjami użytkownika

Za pomocą UDF (user defined functions, funkcje zdefiniowane przez użytkownika) programista może stworzyć nowe funkcje do użycia w formułach. W poniższy sposób używam moją nową funkcję:

Kod znajduje się w module VBA:

Tworzy je się tak samo jak zwykłe funkcje VBA. Umieszczone w module kodu mogą być używane w tym samym pliku. Można je też dodać do pliku personal  lub dodatku. Funkcje UDF podlegają jednak kilku ograniczeniom. Czytaj więcej...

Jedna strona poziomo

Poniżej pokażę jak umieścić część dokumentu w poziomej orientacji. Po co? Mi się ta funkcja przydaje przy pisaniu długich dokumentacji z rysunkami i diagramami. Zdarza się, że jakiś diagram jest znacznie czytelniejszy poziomo. Mogę ustawić osobną sekcję na jedną stronę i zmienić orientację na poziomą tylko dla tej strony.
Wygląda to bardzo dobrze na komputerze i nie utrudnia w żaden sposób drukowania.

Instrukcja

Tworzę nowy dokument i zapisuję kilka zdań na pierwszej stronie. Dla testów można użyć losowy tekst lorem. Zaznaczam środkową część tekstu: Czytaj więcej...

Kurs VBA – Klasy – Atrybuty i właściwości

Zastanawiałem się przez jakiś czas czy atrybuty i właściwości podzielić na dwa osobne posty. Występują one bardzo często razem i poza klasą używa się je tak samo, jednak należy pamiętać, że są to dwie osobne funkcjonalności klas.

Atrybuty określają aktualny stan obiektu. Dla przykładowej klasy Samochód może to być:

  • Prędkość
  • Pojemność
  • Czy drzwi są zamknięte?
  • Czy światła są zapalone?
  • Stan oleju

Spójrzmy na taką (bardziej praktyczną) instrukcję:

Mamy tutaj atrybut, zadeklarowany następująco w module klasy.

Przybiera wartość True, jeżeli plik jest otwarty lub False, jeżeli zamknięty. W metodzie otwierającej plik ustawiamy ten atrybut na True. Mogę więc napisać gdzieś:

Czy ma w takim razie sens poniższa instrukcja?

Pozornie ma sens, jest jednak niebezpieczna. Ostatecznie zamykanie pliku nie może się ograniczać do ustawienia wartości jakieś zmiennej, plik należy zapisać. Z pomocą przychodzą właściwości, dzięki którym możemy tworzyć coś pomiędzy atrybutami a metodami. Poza klasą używa się je jak atrybuty. W środku klasy jest to jednak szereg wykonywanych instrukcji. Utworzę więc właściwość:

Dzięki temu powyższe przypisanie wartości False uruchamia instrukcje, które wywołują metodę CloseFile. Czytaj więcej...

Office lens – skanowanie telefonem

Natrafiłem ostatnio na ciekawą aplikację do skanowania dokumentów telefonem. Nazywa się Office Lens i jest dostępna za darmo w sklepach z aplikacjami. Zajmuje ledwo 50 mb, więc jeśli wolisz spróbować ją sam zamiast rozczytywać się nad moimi obserwacjami, to zapraszam do ściągnięcia, warto.

Ogólnie

Pierwsze co się rzuca w oczy, to uprawnienia, o które prosi aplikacja. Potrzebne jej do działanie jedynie dostęp do robienia i zapisywania zdjęć. Jest to miłe zaskoczenie. Nie lubię, kiedy małe aplikacje żądają dostępu do smsów, telefonu, tożsamości czy kontaktów. Przejmują wtedy praktycznie kontrolę nad telefonem.
Jakość działania mobilnego skanera z pewnością jest zależna od jakości aparatu w telefonie. Osobiście testowałem program na Xperi Z5 Compact z aparatem 23Mpx, czyli raczej dobrym sprzętem. Z drugiej jednak strony o sile aplikacji decydują algorytmy programu, a te działają świetnie. Czytaj więcej...

Organizowanie mejli

Dzisiaj chciałbym się podzielić kilkoma ustawieniami Outlook, które na co dzień bardzo ułatwiają mi ogarnięcie zalewu mejli. Dzięki temu rzeczy nie załatwione zawsze mam na górze listy. Wygląda to jak poniżej.

Na górze listy widać mejle oznaczone flagą, są tak oznaczone wszystkie nowe mejle. Po załatwieniu sprawy klikam flagę i mejl spada poniżej. Dzięki temu każda nie załatwiona sprawa jest na górze, nawet jeżeli mejl przyszedł miesiąc temu.

Powyższy efekt można ustawić dzięki dwóm ustawieniom. Czytaj więcej...