GWARANTOWANE TERMINY
Jesteś tutaj: strona głównastrefa wiedzy4 triki w języku VBA w Excelu
MENU

4 triki w języku VBA w Excelu


Kategoria: Kurs VBA, Kurs Excel, Samouczek Excel
1Oct

Zapraszamy do zapoznania się z 4 praktycznymi trikami dzięki, którym usprawnisz swoją pracę w programie MS Excel. 

 

VBA Excel: jak ukryć arkusz kalkulacyjny w Excelu

 

Istnieją trzy rodzaje widoczości arkusza w VBA:

  • xlSheetVisible – widoczny
  • xlSheetHidden – ukryty w taki sposób, że można go odkryć przy pomocy menu kontekstowego znajdującego się pod prawym przyciskiem myszy
  • xlSheetVeryHidden – arkusz ukryty i niedostępny w menu kontekstowym pod PPM

 

VBA Excel: Daty w Excelu wyświetlane z nazwą dnia tygodnia

 

Pierwszym rozwiązaniem jest zastosowanie dwóch funkcji: Weekday oraz funkcji WeekdayName

Funkcja Weekday przyjmuje dwa argumenty: datę oraz jaki dzień jest dla nas pierwszym dniem tygodnia (domyślnie jest to niedziela). 

Funkcja WeekdayName przyjmuje trzy argumenty: datę, czy podana nazwa ma być skrótem w postaci wartości logicznej (domyślnie podawana jest False – czyli podawana jest pełna nazwa) oraz pierwszy dzień tygodnia (domyślnie jest ustawiony na pobranie systemowych ustawień).

Połączenie dwóch funkcji w poniższy sposób.

WeekdayName(Weekday("2014-09-27", vbMonday))

zwróci wartość „sobota”.

Drugim rozwiązaniem jest zastosowanie tablicy jednowymiarowej:


Dimdzien_tygodnia(1 To 7) As String
dzien_tygodnia(1) = "niedziela"
dzien_tygodnia(2) = "poniedziałek"
dzien_tygodnia(3) = "wtorek"
dzien_tygodnia(4) = "środa"
dzien_tygodnia(5) = "czwartek"
dzien_tygodnia(6) = "piątek"
dzien_tygodnia(7) = "sobota"
Dimmoja_data As Date
moja_data = DateValue("2014-09-27")
MsgBoxdzien_tygodnia(Weekday(moja_data, vbMonday) + 1)

Podane rozwiązanie jest bardziej złożone, jednak pozwala na zdecydowanie programiście co zostanie wyświetlone.

 

VBA Excel: sformatowanie zaznaczania kolorem wierszy parzystych i nie parzystych

 

Pracując w programie Excel mamy możliwość sformatowania w odpowiedni sposób zaznaczenia w taki sposób, aby wiersze nieparzyste były oznaczone innym kolorem niż wiersze parzyste – język VBA idealnie sprawdza się w takich zadaniach. 

Aby wykonać zadanie opisane powyżej należy zastosować kod: 

 

i = 1
For Each wiersz In Selection.Rows ‘dla każdego wiersza w zaznaczeniu
If i Mod 2 = 0 Then ‘jeśli i jest parzyste
wiersz.Interior.Color = 255 ‘pokoloruj wiersz na czerwono
Else ‘w przeciwnym przypadku
wiersz.Interior.Color = 46523 ‘pokoloruj wierszy na zielono
End If
    i = i + 1 ‘zwiększaj i co jeden
Next

 

VBA Excel: nadawanie nazwy miesięcy arkuszom kalkulacyjnym 

 

Jeżeli posiadamy dwanaście arkuszy w skoroszycie i chcemy nadać im nazwy kolejnych miesięcy możemy do tego wykorzystać kod opracowany za pomocą VBA. W przygotowanym kodzie znajduje się zabezpieczanie przed sytuacja, w której plik posiada więcej niż dwanaście arkuszy. 

 

For Each sh In ActiveWorkbook.Worksheets ‘dlakażdegoarkusza
    If sh.Index<= 12
 Then ‘jeślinumerarkusza<= 12sh.Name = MonthName(sh.Index) ‘zmień nazwę na nazwę miesiąca
    End If
Next

 

Autorem artykułu jest Grzegorz Plak, trener Cognity.

 

Artykuły powiązane:

 

Możesz być również zainteresowany:

 

 

Licencja Creative Commons
4 triki w języku VBA w Excelu by Cognity is licensed under a Creative Commons Uznanie autorstwa-Użycie niekomercyjne 4.0 Międzynarodowe License.

Wybrani Klienci:

Ten serwis używa plików cookies. Brak zmiany ustawień przeglądarki oznacza zgodę na ich używanie.
Więcej informacji o plikach cookies znajdziesz tutaj
Kliknij ZGADZAM SIĘ, aby ta informacja nie wyświetlała się ponownie
Cognity.pl