Poradniki i Porady ZGORA

Model Obiektowy VBA w Excel – poradnik

W moim dzisiejszym poradniku omówię obiekt Range – zamierzam skupić się na jego najpopularniejszych zastosowaniach. Oczywiście tak jak wspominałem w poprzednich poradnikach – temat jest tak szeroki, a ilość czasu tak mała, że skupię się tutaj tylko na najczęściej spotykanych zastosowaniach, z którymi stykam się na co dzień pisząc kod bądź prowadząc szkolenia VBA. Jako, że niczyja wiedza nie jest bezgraniczna, wszelkie sugestie bądź wskazówki są jak najbardziej mile widziane.

Najpopularniejsze zastosowania obiektu Range w VBA dla Excel:

1. Wpisywanie bądź pobieranie danych z arkusza.

W tym wypadku korzystamy z właściwości value obiektu np: Range(„A1”).value = „cośtam”. Value jest właściwością domyślną, możemy więc NAJCZĘŚCIEJ (ale nie zawsze) ją pominąć, tak więc powyższy zapis Range(„C3”) = „coś innego” również jest poprawny.

2. Ustalanie formatowania dla danego zakresu komórek

Z ustalaniem formatowania sprawa ma się podobnie jak z wpisywaniem wartości. Najprościej nagrać sobie makro (zarejestrować) z formatowaniem jakie nam najbardziej odpowiada i powyrzucać niepotrzebne rzeczy np:

Kolorowanie tła komórki na żółto a czcionki na czerwono + dodanie pogrubienia dla zakresu od A3 do C5 możemy uzyskać poprzez:

Range(„a3:c5”).Interior.ColorIndex = 6
Range(„a3:c5”).Font.ColorIndex = 3
Range(„a3:c5”).Font.Bold = True

Oczywiście w takiej sytuacji zawsze polecam stosowanie instrukcji With czyli jak ja to dla uproszczenia nazywam „wyciągania przed nawias” tych samych obiektów:

With Range(„a3:c5”)
.Interior.ColorIndex = 6
.Font.ColorIndex = 3
.Font.Bold = True
End With

Oczywiście jak każdy widzi, w obrębie kodu powtarza nam się .Font więc powyższy kod również można jeszcze zoptymalizować do postaci:

With Range(„a3:c5”)
.Interior.ColorIndex = 6
With .Font
.ColorIndex = 3
.Bold = True
End With
End With

Oczywiście nie muszę chyba wspominać, że wszystkie 3 powyższe instrukcje robią dokładnie to samo.

3. Czyszczenie zakresów

Mamy tutaj do dyspozycji kilka opcji (dokładnie takich samych jak pod przyciskiem wyczyść)

Range(„A4:C5”).Clear – kasowanie wszytsko z zadanego zakresu (formatowania, komentarzy itd.)
Range(„A4:C5”).ClearComments – kasowanie tylko komentarzy
Range(„A4:C5”).ClearContents – kasowanie tylko zawartości (komentarz, formatowanie itd zostaje)
Range(„A4:C5”).ClearFormats – kasowanie tylko formatowania (wartości zostają)
Range(„A4:C5”).ClearHyperlinks – kasowanie tylko łączy
Range(„A4:C5”).ClearNotes – kasowanie notatek (w tym również notatek głosowych)

Kolejne zastosowania czyli:

– Kopiowanie zakresów (opcja wklej oraz wklej specjalnie)
– Sortowanie zakresu
– Wyszukiwanie konkretnej wartości w zakresie
– Range i pętle.
– Pobieranie zakresów od użytkownika.
– Znajdowanie pierwszego i ostatniego wiersza.
– Range.copyfrom recordset

opiszę w kolejnych poradnikach.

Komentarze i opinie do poradnika "Model Obiektowy VBA w Excel – poradnik" »»

Zostaw komentarz lub opinię »»


Relatywne poradniki:

  1. Tworzenie stron internetowych – najczęstsze błędy – Poradnik
  2. Dobra betoniarka na małe budowy – jaki model jest najlepszy?
  3. Jak opanować arkusz kalkulacyjny? – Excel
  4. Adwords – poradnik
  5. Poradnik: Bezpieczeństwo instalacji zbiorników na gaz LPG