Makra
Korzystamy z zakładki Deweloper (jak dodać, patrz rozdział 5)
1 zaznaczamy obszar danych które chcemy modyfikować
2 wybierz "zarejestruj makro"
3 nazwij makro i wciśnij OK, ...nagrywanie rozpoczęte
wykonaj czynności które chcesz dodać do makro, np w zakładce Narzędzia wybierz sortowanie
wróć do zakładki Deweloper o w tym samym miejscu kliknij zatrzymaj rejestrowanie
Teraz klikając ikonkę Makra - 1
możesz wybrać - 2 czy chcesz makro uruchomić czy edytować
Makro będzie zawsze odnosić się do komórek zaznaczonego WCZEŚNIEJ obszaru, jeśli chcemy stworzyć makro odnoszące się obszarów które zaznaczamy przed uruchomieniem a nie stworzeniem makra (czyli dowolnych) to przed tworzeniem/nagrywaniem należy zaznaczyć opcję "użyj odwołań względnych" (pod ikonką zarejestruj makro)
Dodawanie makra do przycisku
Po stworzeniu makra, w zakładce Deweloper rozwijamy ikonę Wstaw (od formularzy z roz.5)
wybieramy pierwszą ikonę "Przycisk (format formularza)" i nadajemy mu stworzone wcześniej makro.
Można dodać stworzone makro również do wstążki. wybierz OPCJE i Dostosowanie Wstążki.
W oknie zmien "Wybierz Polecenia z" na "Makra"
Wybrać makro i przeciągnąć na dowolną kartę.
Visual Basic VBA
Tworzymy dwa makra (np jedno nadaje kolor komórce, drugie dodaje ramkę w koło komórki)
Po wybraniu ikony Makra, wybieramy Edycja.
Otwiera się nam okno Visual Basic:
Aby Stworzyć swoje proste makro wywołujące dwa wcześniej stworzone wystarczy wpisać:
Sub nazwamakra()
'
'po cudzysłowach możemy komentować
'
'
kolor1
ramka
End Sub
sub nazwa tworzy nowe makro, inne makra wywołujemy przez wpisanie ich nazwy
zakończenie treści makra wpisujemy End Sub, komentarze po cudzysłowu
Teraz możemy wywoływać swoje nowe makro które wykonywać będzie jednocześnie makro kolor1 i makro ramka
Pętle w VBA
przykład makra z pliku marcin7b z folderu przykłady 10
Sub konto() Dim ile As Integer Dim kwota As Double Dim opro As Double Dim odsetki As Double Dim wplata As Double Dim wiersz As Integer 'pobranie zmiennych z arkusza ile = Cells(2, 2) kwota = Cells(1, 2) wplata = Cells(1, 5) opro = Cells(3, 2) odsetki = 0 'określenie wartości zmiennych, jeśli z cells (x,x) to pobiera z komórki x,x Range("a6:c1000").Clear 'czyści to co w komórkach, np po poprzednich wyliczeniach, 'od 6tego wiersza w dół Do While kwota < 1000000 'pętla wykonuje się az kwota=1000000 Cells(i + 5, 1) = i 'wpisz do okreslonej komórki wartość i kwota = kwota + odsetki + wplata 'kwota=stara kwota + odsetki + wplata Cells(i + 5, 2) = kwota ' wpis kwotę do komórki odsetki = kwota * opro / 12 'oblicz odsetki dla kwoty Cells(i + 5, 3) = odsetki 'wpisz odsetki do komórki i = i + 1 'zwiększ i o jeden Loop ' koniec pętli End Sub
Opis programu w komentarzach, dim - tworzenie nowej zmiennej o określonym typie
Przykłady
Link
Przykładowe pliki Makr - folder 10, nie otwieraj w przeglądarce, ściągnij plik i uruchom w Excelu.
Możesz mieć zablokowane uruchamianie plików z makrami ściągniętymi z sieci (względy bezpieczeństwa), potwierdź i uruchom plik ponownie.


