VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie...
-
Upload
dangnguyet -
Category
Documents
-
view
216 -
download
1
Transcript of VBA Excel Formularz Formanty - tryba.cba.pl · VBA Excel Formularz Formanty Label — wstawianie...
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
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
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
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
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)
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
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
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
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
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