Beispiele für eine Anwendung mit Makro-Programmierung:
Befehle & Beispiele
Information über:
- Werte einfügen, kopieren, ausschneiden und löschen
https://www.youtube.com/watch?v=B9GV6QIqmac - Erstellen, ausführen und speichern von Makros
https://www.youtube.com/watch?v=zLaIBlTBM_g - Erstellen von Messageboxen (ca. 7 Minuten)
https://www.youtube.com/watch?v=rcBDa3xTkUY - Schriften formatieren (ca. 6 Minuten)
https://www.youtube.com/watch?v=8RGVPAkekRk - Variablen & Datentypen (ca. 7 Minuten)
https://www.youtube.com/watch?v=SlwWEAx8LFw
Aufgabe 1 – Einführung in VBA
- Einstellungen in Excel um VBA zu nutzen
- Erstellen, ausführen und speichern von Makros
https://www.youtube.com/watch?v=zLaIBlTBM_g
Schaue Dir das Video an und versuche dies in Excel – am besten parallel – nachzubauen. Speichere Deine Lösung in Teams/Aufgaben unter AB1-VBA-DeinName.xlsm.
Im Einzelnen lernst Du dies:
- Menüband Einstellungen -> Entwicklertools
- Einstellungen ändern -> Variablendeklaration erforderlich
- Modul einfügen
- Ein Makro „erstesMarko“erstellen mit
- Kommentarzeile
- Aktivieren einer Tabelle (=Worksheet)
- Einer Zelle einen Wert zufügen
- Marko ablaufen lassen
- Excel Datei mit Makro speichern
- Eine Schaltfläche (Push Button) zur Ausführung des Makros hinzufügen
- VBA-Grundl
Aufgabe 2
Befehle in VBA: AB2-VBA-EinfacheBefehle
Information über:
- Zellen ansprechen: Einzelne Zellen, Bereiche, Zeilen & Spalten
- Werte einfügen, kopieren, ausschneiden und löschen
https://www.youtube.com/watch?v=B9GV6QIqmac
Aufgabe 3
Öffne Deine Datei von Aufgabe 2 und füge ein weiteres Tabellenblatt hinzu.
Speichere zunächst diese Datei unter dem Namen:
VBA3DeinName.xlms (mit Markos!!!!)
Ziel ist nun es ein Tabellenblatt mit Schaltflächen zu erstellen, mit Hilfe derer Werte in Zellen geschrieben und diese Zellen formatiert werden.
AB3-VBA-EinfacheBefehle-Forts1
Aufgabe 4
AB4-VBA-Schriftgröße: AB4-VBA-schriftgroesse
Aufgabe 5
Infos wie Du Makros aufzeichnest findest Du hier:
Info-VBAMacro
Aufgabe 6
Aufgabe 7 – Wiederholung der bereits bekannten Befehle
Programmiere folgende Aufgabe VB-Farben&Rahmen. Informationen zu allen notwendigen Befehlen findest Du auf der Seite unten.
Fortsetzung
Aufgabe 8 – Taschenrechner
Füge nun der Exceldatei ein weiteres Tabellenblatt hinzu.
Versuche dann einen einfachen Taschenrechner in VBA zu programmieren (so oder so ähnlich oder anders AB-Taschenrechner).
Die zwei Zahlen des Taschenrechners sollen nun durch eine Inputbox eingegeben sowie das Ergebnis durch eine Messagebox ausgegeben werden.
Die Syntax der Befehle (Befehlsaufbau) findest Du wie üblich auf der Seite: http://bkovertretung.bplaced.net/wordpress/w-fh-vba/vba-syntax-beispiele/
Gestalte den Taschenrechner durch bunte Schriften, Füllfarben und unterschiedlichen Umrandungen bunt und interessant.
Überprüfe: Hast Du alle genannten Formatierungsmöglichkeiten angewendet, ergänze das Tabellenblatt!
Verändere Deine Messageboxen indem Du alle neugelernten Möglichkeiten anwendest. (Info: https://jantrummel.de/msgbox-vba-funktion-excel-kompakt-erklart/ )
–> Hier ist Kreativität gewünscht!!!
Präsentation der besten Lösungen in der nächsten Stunde!!!
___________________________________________________
Aufgabe 9 – Taschenrechner mit Variablen
- Verwende für alle Benutzereingaben (Text, Schriftgröße, Zahl1, Zahl1, Ergebnis etc.) entsprechende Variablen.
Quellen
_______________________________________________________________________
Aufgabe 8 – Anwendung in der Finanzmathematik – Zinseszinsrechnung
Programmiere nun eine Excel-Arbeitsblatt, dass alle gesuchten Größen der Zinseszinsrechnung berechnet.
Wie dies aussehen könnte und welche Makros erforderlich sind, findest Du hier: VBA-Finanzmathe
Aufgabe 9 – Schleifen-1
Ergänze nun das Makro so,
- die Überschriften ergänzt werden: 1. Spalte: Datum; 4. Spalte: Zufallszahl.
- dass in der ersten Spalte beginnend mit dem Datum von heute, das Datum hochgezählt wird (Befehl: date; date + 1 -> Datum von Morgen)
- in der Spalte 4 eine Zufallszahl zwischen 1 und 56 steht
(Befehl: = Round(Rnd * 56, 0) ) und die Zelle die entsprechende Hintergrundfarbe annimmt.
Tipp: definiere dazu eine Variable (Bsp.: Dim zZahl as integer)
(Befehl: .Interior.ColorIndex = … ) - Die Anzahl der erzeugten Zeilen vom Benutzer eingegeben wird.
(Befehl: Inputbox(“ Bitte …. „) )
Schreibe ein weiteres Makro loeschen(), das
- durch eine Benutzereingabe, die letzte zu löschende Zeile abfragt. (Befehle: Dim lZeile as integer ; Inputbox(“ Bitte …. „) )
- dann alle Zellen von Zelle(1,1) bis Spalte F, der eingebenen Zeile löscht. (Befehl: Range(Cells( … ), Cells(…..)).Clear)
Lösung – Schleifen 1-
Sub schleifen1()
Dim Zeile, Spalte, ende, zahl As Integer
Cells(2, 2).Value = „Zahl 1“
Cells(2, 3).Value = „Zahl 2“
Zeile = 3
Spalte = 2
ende = 16
For zahl = 0 To ende
Cells(Zeile, Spalte).Value = zahl
Cells(Zeile, Spalte + 1).Value = zahl * 2
Cells(2, 1).Value = „Date“
Cells(Zeile, Spalte – 1).Value = Date + zahl
Cells(2, 4).Value = „Zufallszahl“
Cells(Zeile, Spalte + 2) = Round(Rnd * 1000, 0)
Zeile = Zeile + 1
Next
End Sub
Schleifen – weitere Übung:
Aufgabe 10 – Bedingungsprüfung
Anwendung der IF-Funktion:
AB-BVA-IF-Bedingung
Aufgabe 11 – Test
Aufgabe 12 – Rechnen -2
AB-BVA-Scheifen-alleAufgaben
Aufgabe 13 – Darlehnstilgung
______________________________________________________
Aufgabe 20
Erstellen von Userforms.
- Schaue Dir zunächst dieses Video an und baue das Dokument nach. https://www.youtube.com/watch?v=R8A1h383JUQ Speichere dies unter: AB-VBAx-DeinName.xlms
- Dann baust Du eine eigene Userform. Diese soll folgende Dinge enthalten:
- 3 Textboxen: Diese sind mit entsprechen zu benennen:
(Bsp.: tb_Name) - 3 Beschriftungsfelder (Name jeweils: Bsp.: l_Name, ..). Diese sind vor den Textboxen zu platzieren. Hier steht drin, die Textboxen enthalten sollen.
- 2 Schaltflächen (Name: cmd_abbrechen & cmd_ok)
- 3 Textboxen: Diese sind mit entsprechen zu benennen:
Quellen