VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie...

11
VBA Excel Formularz Formanty Label wstawianie etykiet TextBox wstawianie pól tekstowych ComboBox wstawianie pól kombi ComboBox wstawianie pól kombi ComboBox wstawianie pól kombi OptionButton wstawianie przycisku opcji Toggle Button wstawianie przycisku przełącznika Frame wstawianie pola grupy CommandButton wstawianie przycisku polecenia TabStrip wstawianie elementu okna z kartami MultiPage wstawianie zakładkowego elementu okna dialogowego ScrollBar wstawianie paska przewijania wstawianie przycisków umożliwiających wybieranie wartości poprzez klikanie strzałek Image wstawianie obrazu RefEdit wybieranie zakresu arkusza

Transcript of VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie...

Page 1: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi

VBA Excel Formularz

Formanty

Label — wstawianie etykiet

TextBox — wstawianie pól tekstowych

ComboBox — wstawianie pól kombi

ComboBox — wstawianie pól kombi

ComboBox — wstawianie pól kombi

OptionButton — wstawianie przycisku opcji

Toggle Button — wstawianie przycisku przełącznika

Frame — wstawianie pola grupy

CommandButton — wstawianie przycisku polecenia

TabStrip — wstawianie elementu okna z kartami

MultiPage — wstawianie zakładkowego elementu okna dialogowego

ScrollBar — wstawianie paska przewijania

wstawianie przycisków umożliwiających wybieranie wartości poprzez klikanie strzałek

Image — wstawianie obrazu

RefEdit — wybieranie zakresu arkusza

Page 2: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi

Okno Właściwości

Podstawowe właściwości kontrolek

(Name) Nazwa kontrolki

BackColor Kolor tła

Caption Opis widoczny na kontrolce

ColumnCount Liczba kolumn

Default Wartość domyślna

Height Wysokość kontrolki

Left Odległość lewej krawędzi kontrolki od

lewego marginesu formatki

MaxLenght Maksymalna długość

wpisywanego ciągu znaków

MousePointer Wygląd kursora po

naprowadzeniu na kontrolkę

Picture Obrazek wyświetlany jako tło

kontrolki

RowSource Zakres komórek arkusza, z

których maja być skopiowane dane do

kontrolki

ScrollBars Paski przewijania

TextAlign Wyrównanie tekstu

Top Odległość górnej krawędzi kontrolki od

górnego marginesu formatki

Width Szerokość kontrolki

WordWrap Zawijanie opisów umieszczonych

na kontrolce

Page 3: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi

Pole listy

Wstaw do projektu pole listy.

1. W oknie Code wybierz polecenie Insert/UserForm W pasku Toolbox odszukaj ikonę ListBox i przeciągnij na formularz Kliknij prawym przyciskiem myszy pole listy.

2. Z podręcznego menu wybierz polecenie View Code i wyświetl okno z kodem

Private Sub ListBox1_Click()

End Sub

Jeżeli pasek Toolbox jest ukryty, kliknij ikonę Toolbox

Page 4: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi

Napisz program, który spowoduje wyświetlenie w oknie listy dwóch pozycji: Matematyka Fizyka

Wybierz polecenie Insert/UserForm Wstaw do projektu pole listy

Umieść kursor w miejscu, w którym ma być narożnik pola listy i przeciągnij kursor

Wyświetl arkusz Excel i w komórce A1 wpisz Matematyka i w A2 Fizyka W oknie Properties - ListBox1 odszukaj RowSource i kliknij pole na prawo od etykiety RowSource i wpisz adres obszaru, w którym znajdują się dane i uruchom program

Page 5: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi

Pole combi

Napisz program, który spowoduje wyświetlenie w oknie listy dwóch pozycji: Matematyka Fizyka w polu kombi

Wykonaj analogiczne czynności jw. i wstaw pole kombi

W ikonie Properties wybierz ComboBox

Kliknij kartę Alphabetic i w oknie RowSource wpisz zakres komórek z danymi

F7 – okno kodu

Uruchom program (F5)

Page 6: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi

Pole wyboru

Utwórz formularz zawierający pole wyboru

Wstawiamy CheckBoxy i dodajemy pole tekstowe z poleceniem: ‘Wybierz kraj lub kraje’.

Zmieniamy opisy checkboxów: Hiszpania, Grecja, Francja i zmieniamy we właściwościach

kolory itp. oraz nazwy jak na checkboxach.

Do Wszystkie przypisujemy kod

Private Sub Wszystkie_Click()

Hiszpania.Value = True

Grecja.Value = True

Włochy.Value = True

End Sub

Uruchom formularz

Page 7: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi

Teraz dodamy drugi opis i 2 comboboxy, pierwszy będzie umożliwiał wybór dnia, drugi

miesiąca.

Dodamy 2 przyciski (CommandButton).

Napisz program, który spowoduje wyświetlenie formularza na ekranie.

Wpisz z klawiatury kod

Private Sub UserForm_Click()

End Sub

Do zamknięcia formularza należy użyć instrukcji Unload nazwa_formularza, np. Unload UserForm1

Page 8: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi

Przycisk polecenia

W arkuszu dodaj przycisk uruchamiający formularz.

W kodzie przypisz do przycisku

Private Sub CommandButton1_Click()

UserForm1.Show

End Sub

Zakładkę nazwij Formularze_VBA

Page 9: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi

Przypisanie kodu

Okno eksploratora w VBA

Arkusz1(Formularze_VBA)

Private Sub CommandButton1_Click()

UserForm1.Show

End Sub

UserForm1

Private Sub UserForm_Initialize()

dzien.List = Array("1", "2", "3", "4", "5", "6", "7", "9", "10", "11", "12", "13", "14", "15", "16", "17",

"18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31")

miesiac.List = Array("czerwiec", "lipiec", "sierpień", "wrzesień", "październik")

miesiac.ListIndex = 0

dzien.ListIndex = 0

End Sub

Private Sub Wszystkie_Click()

Francja.Value = True

Grecja.Value = True

Hiszpania.Value = True

End Sub

Private Sub Utworz_Click()

Formularze_VBA.Utworz

Unload Me

End Sub

Private Sub Anuluj_Click()

Unload Me

End Sub

Page 10: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi

Modules Formularze-VBA

Sub Utworz()

Francja = UserForm1.Francja.Value

Grecja = UserForm1.Grecja.Value

Hiszpania = UserForm1.Hiszpania.Value

dzien = UserForm1.dzien.Value

miesiac = UserForm1.miesiac.Value

'połączenie wybranych krajów

If Francja Then wybrane_kraje = wybrane_kraje & "Francja "

If Grecja Then wybrane_kraje = wybrane_kraje & "Grecja "

If Hiszpania Then wybrane_kraje = "Hiszpania "

'wpisanie co wybrano

Range("b1").FormulaR1C1 = wybrane_kraje

Range("b2").FormulaR1C1 = dzien

Range("b3").FormulaR1C1 = miesiac

End Sub

Jeśli chcemy skasować przycisk po zatwierdzeniu formularza, to wpisujemy:

ActiveSheet.Shapes("CommandButton1").Select

Selection.Delete

Page 11: VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie etykiet TextBox — wstawianie pól tekstowych ComboBox — wstawianie pól kombi