Visual Basic for Applications

Größe: px
Ab Seite anzeigen:

Download "Visual Basic for Applications"

Transkript

1 Visual Basic for Applications VBA & Excel 2003 IV2 Tutorium Universität Linz Ernst Rodlmayr Hinweis: Die Beispieldateien findest du unter: Skriptum zum IV2 Tutorium , WS 2007/08 Ernst Rodlmayr 2008

2 Inhaltsverzeichnis 1. VBA Einführung VBA im Einsatz Makros aufzeichnen Makros ausführen/starten über Menüleiste Eigenes Symbol Menüeintrag Hauptmenüpunkt Benutzerdefinierte Symbolleiste Eigene Schaltfläche Makros löschen Der Visual Basic Editor Der Makro-Code Leeres Makro erstellen VBA Programmier-Grundlagen Konstanten Variablen Datentypen Ein- und Ausgabefenster Eingabefenster Ausgabefenster Arrays Prinzip der VBA Programmierung Eigenschaften Methoden Kontrollstrukturen Verzweigungen Einseitige Verzweigungen Zweiseitige Verzweigung Mehrseitige Verzweigung Fallauswahl (Case) Schleifen For Next-Schleife Do While Loop-Schleife Kontrollstrukturen Vertiefung Ausgabe in Zellen Objekte Objekthierarchie - Adressierung Objektkatalog Hilfe zu Objekten finden (nicht gemacht) Objekten mit WITH ansprechen Abschlußbeispiel... 48

3 VBA Einführung Was ist VBA? VBA bedeutet Visual Basic for Applications und dient zur Erstellung von Programmen, die sich ausschließlich in Kombination mit Officeanwendungen verwenden lassen. Nicht verwechseln sollte man VBA mit der Programmiersprache VB (Visual Basic), neuerdings Visual Basic.net, wo sich eigenständige Programme entwickeln lassen. Anwendungen die mit VBA erstellt wurden sind auch unter der Bezeichnung Makros bekannt. Fortgeschrittene Anwender sind meist mit dem Aufzeichnen von Makros vertraut und haben diese Programme meist auf andere Arbeitsdateien angewandt. VBA verfolgt den Zweck Abläufe im Office-Bereich (Excel, Word, Access, Powerpoint, Outlook) zu automatisieren und erhöht so die Effizienz bei wiederkehrenden Arbeitsschritten. Es dient zur Vereinfachung von Arbeitsvorgängen und ermöglicht beispielsweise die Eingabe von Daten über ein Dialogfenster. Anschließend lassen sich die eingegebenen Daten in verschiedensten Berechnungen (am Arbeitsblatt) weiterverarbeiten. Was kann man mit VBA in Excel machen? - Erstellung eigener Funktionen - Benutzerdefinierte Fehlermeldungen anzeigen - Daten aus anderen Anwendungen verwenden (z.b. aus Access) - Dialogfenster zur Dateneingabe - Dialogfenster mit Steuerelementen (z.b. Diagramm erstellen) - System- und Anwendungsinformationen auswerten lassen Die einfachste Art ein Makro zu erstellen ist das Aufzeichnen eines Makros (vgl. Kap 2.1.)

4 VBA im Einsatz 2.1. Makros aufzeichnen Beispiel1: Angabe: 01makro_aufzeichnen.xls Lösung: 01makro_aufzeichnen_loesung.xls Beim Aufzeichnen von Makros wird jeder vom Benutzer durchgeführter Arbeitsschritt aufgezeichnet und ein eigenes VBA-Programm erzeugt. Dieses wird in einem VBA-Modul gespeichert und kann später aufgerufen und verändert werden. Beim Aufzeichnen sollte man darauf achten, keine unnötigen oder fehlerhaften Arbeitsvorgänge vorzunehmen, da diese sonst unnötigerweise mitgespeichert werden. Sind dennoch Fehler passiert ist es oft besser die Aufzeichnung abzubrechen und neu zu starten. Mit den nötigen Kenntnissen lassen sich Fehler in Makros natürlich auch im VBA-Editor korrigieren und anpassen. Zudem bietet das automatische Aufzeichnen für den Benutzer die Möglichkeit bestimmte Vorgänge über den Quellcode zu analysieren und so schneller mit der Funktionsweise von VBA vertraut zu werden. Das Aufzeichnen von Makros erscheint bei wiederkehrenden Arbeitsschritten, insbesondere Formatierungsarbeiten (z.b. bestimmte Kopf- und Fußzeile) sinnvoll und eignet sich auch besonders für wiederkehrende Einstellungen der Arbeitsumgebung. Menüleiste: Extras Makro Aufzeichnen

5 Makroname: benutzerindividuell - Tastenkombination: benutzerindividuell Hinweis: Es empfiehlt sich hier keine vordefinierten Tastenkombinationen zu verwenden, wie z.b. STRG + C (copy), weil diese Funktion in dieser Arbeitsmappe ansonsten nicht zur Verfügung steht - Speichern in: Diese Arbeitsmappe Das Makro wird in diese Arbeitsmappe gespeichert und steht nur in dieser zur Verfügung. Soll das Makro auch auf andere Arbeitsmappen angewandt werden muss die Arbeitsmappe, die das Makro enthält, geöffnet sein. Neue Arbeitsmappe Das Makro wird zwar in der aktuellen Arbeitsmappe aufgezeichnet, jedoch in eine neue Arbeitsmappe gespeichert Persönliche Makroarbeitsmappe Hier wird das Makro am lokalen System gespeichert. Dadurch steht es am lokalen System allen Arbeitsmappen zur Verfügung. Hinweis: Beim Versenden von Arbeitsmappen geht das Makro verloren. - Anzeige in Statuszeile: Aufzeichn. Hinweis: Jede Makroaufzeichnung ist durch den Text Aufzeichn. in der Statusleiste (links unten) erkennbar 1. Symbolleiste Makro Aufzeichnen:

6 - 4 - a. Makro aufzeichnen/aufzeichnung beenden b. relativer Verweis /absoluter Verweis Absolute Aufzeichnung (Standardeinstellung) Es wird immer mit einem absoluten Zellbezügen gearbeitet (Zellen bleiben immer gleich/fix zb.: B2) Relative Aufzeichnung Es wird mit relativen Zellbereichen gearbeitet (z.b.: 1 Zeile nach unten, 1 Spalte nach rechts). Dabei wird immer von der aktiven (markierten) Zelle ausgegangen Beispiel2: Angabe: 02test_offene_mappe.xls Lösung: 02test_offene_mappe_loesung.xls Beispiel3: Angabe: 03rel_abs_verweis.xls Lösung: 03rel_abs_verweis_loesung.xls 2.2. Makros ausführen/starten über Menüleiste Extras Makro Makros Makro auswählen - Ausführen Symbolleiste Visual Basic Ansicht Symbolleisten Visual Basic (Häkchen setzen) Makro ausführen; Tipp: Diese Symbolleiste am besten neben der Symbolleiste Format platzieren a. b. c. d.

7 - 5 - a. Makro ausführen b. Makro aufzeichnen c. Sicherheit Sehr hoch/hoch: Unsignierte Makros werden beim Öffnen deaktiviert Mittel: Eingabeaufforderung; der Benutzer kann selber entscheiden, ob ein Makro aktiviert/deaktiviert wird. Die Sicherheitsstufe Mittel ist für unsere Vorhaben am sinnvollsten. d. Niedrig: Alle unsignierten Makros werden standardmäßig aktiviert Hinweis: Makros können Viren enthalten. Aktivieren Sie deswegen nur Makros von vertrauenswürdigen Herausgebern. e. VBA-Editor Eigenes Symbol (= Benutzerdefinierte Schaltfläche) für: 03rel_abs_verweis_loesung.xls ein Symbol erstellen r. Maus Anpassen Befehle Makros benutzerdefinierte Schaltfläche Mit Drag und Drop den Punkt Benutzerdefinierte Schaltfläche in eine gewünschte Stelle in eine bestehende Symbolleiste ziehen. Danach das Symbol mit der rechten Maustaste anklicken:

8 Name: Einfärben - Schaltflächensymbol bearbeiten - Schaltflächensymbol ändern - Makro zuweisen - Entsprechendes Makro auswählen Menüeintrag (= Benutzerdefiniertes Menüelement) für: 03rel_abs_verweis_loesung.xls einen Menüeintrag (unter Extras) erstellen r. Maus Anpassen Befehle Makros benutzerdef. Menüelement Mit Drag und Drop den Punkt Benutzerdefiniertes Menüelement an die gewünschte Position, unter einen Hauptmenüpunkt ziehen. Danach den Menüeintrag mit der rechten Maustaste anklicken: - Name: &Einfärben (hier steht vor der Bezeichnung das Zeichen &) - Makro zuweisen Hauptmenüpunkt für: 03rel_abs_verweis_loesung.xls - einen Hauptmenüpunkt namens Spezial erstellen - darunter einen Menüeintrag einfärben anlegen - einen weiteren Menüeintrag mit Hyperlink zur Datei arbeitszeit_ernst2007.xls erstellen

9 - 7 - r. Maus Anpassen Befehle Neues Menü Neues Menü Mit Drag und Drop den Punkt Neues Menü an die gewünschte Position, der Menüleiste ziehen. Danach kann der Hauptmenüpunkt mit Menüeinträgen gefüllt werden (vgl. 2.6.). Dabei ist es auch möglich einen Menüeintrag über einen Hyperlink mit einer Datei zu verknüpfen (r. Mausklick auf Menüeintrag Hyperlink zuweisen). So können Dateien immer über einen bestimmten Menüeintrag geöffnet werden. Dateiname und Speicherort dürfen sich dann natürlich nicht ändern Benutzerdefinierte Symbolleiste r. Maus Anpassen Symbolleisten Neu Eigene Schaltfläche (Button) für: 03rel_abs_verweis_loesung.xls eine Schaltfläche Einfärben erstellen Ansicht Symbolleisten Formular Schaltfläche aufziehen Makro auswählen OK (zuweisen) Schaltfläche beschriften Beispiel4: Angabe: 04makro_aufzeichnen2.xls Lösung: 04makro_aufzeichnen2_loesung.xls

10 Makros löschen Extras Makro Makros (Makro auswählen) Löschen 2.4. Der Visual Basic Editor Der Visual Basic Editor dient zur Erstellung und Verwaltung von VBA- Projekten. Es existiert folgender Fensteraufbau: o Menüleiste o Symbolleiste o Projekt Explorer (mit Modulen) o Eigenschaftsfenster o Code-Fenster (Prozedur auswählbar) Dabei sind normalerweise in einem Modul alle Makros einer Arbeitsmappe enthalten Der Makro-Code Ein Makro ist folgendermaßen aufgebaut: Sub [Makroname] Kommentar Beschreibung des Makros Autor <Anweisungen> Kommentare werden mit eingeleitet. Sie sind eine wichtige Hilfe für den Programmierer um die Verständlichkeit eines Programmes bzw. von Programmteilen zu erklären. Sub Subroutine (engl.) = Unterprogramm (Prozedur) Beispiel5: Schriftformatierungen.xls Angabe: 05schriftformatierung.xls Lösung: 05schriftformatierung_loesung.xls

11 - 9 - Ursprüngliches VBA Sub Schriftformatierungenm() ' ' Schriftformatierungenm Makro ' Makro am von Ernst Rodlmayr ' aufgezeichnet ' ' Tastenkombination: Strg+m ' With Selection.Font.Name = "Tahoma".Size = 10.Strikethrough = False.Superscript = False.Subscript = False.OutlineFont = False.Shadow = False.Underline = xlunderlinestylenone.colorindex = xlautomatic End With With Selection.Font.Name = "Tahoma".Size = 14.Strikethrough = False.Superscript = False.Subscript = False.OutlineFont = False.Shadow = False.Underline = xlunderlinestylenone.colorindex = xlautomatic End With Selection.Font.Bold = True Selection.Font.ColorIndex = 3 Optimiertes VBA Sub Schriftformatierungenm() ' ' Schriftformatierungenm Makro ' Makro am von Ernst Rodlmayr ' aufgezeichnet ' ' Tastenkombination: Strg+m ' With Selection.Font.Name = "Tahoma".Size = 14.Bold = True.ColorIndex = 3 End With 2.6. Leeres Makro erstellen VBA-Editor Einfügen Modul Beispiel6: Angabe: 06Eingabe_Ausgabe.xls Lösung: 06Eingabe_Ausgabe_loesung.xls Aufgabenstellung Erstellen Sie ein Makro, welches aus dem eingegebenen Betrag (inkl. MWSt) den Mehrwertsteuerbetrag herausrechnet. Das Makro soll folgende Komponenten vorweisen:

12 a. MWSt-Satz: 20 b. Eingabefenster zur Eingabe des Betrages (inkl. MWSt); Beschriftung des Fensters: Eingabe ; Vorgabewert: 100 c. Mehrwertsteuerbetrag = Betrag / (100 + MWSt-Satz) * MWSt-Satz d. Ausgabefenster mit folgendem Text "Im Preis von... Euro sind... Euro MWSt enthalten. Nettobetrag =..." Beschriftung des Fensters: Ergebnis der Berechnung. Sub MwstBerechnungMitEingabe() Const Mwst As Integer = 20 Dim Betrag As Currency, BetragMwst As Currency Betrag = InputBox("Bitte geben Sie den Preis inkl. MWst ein:", "Eingabe", 100) BetragMwst = Betrag / (100 + Mwst) * Mwst MsgBox "Im Preis von " & Betrag & " Euro sind " & BetragMwst & _ " Euro Mwst enthalten. Nettobetrag = " & _ Betrag - BetragMwst, vbinformation, "Ergebnis der Berechnung" Sub Subroutine (Prozedur) Const Konstante (Zuweisung: Const <Name> As <Datentyp>) Integer Datentyp: ganze Zahlen von Dim Variable (Zuweisung: Dim <Name> As <Datentyp>) InputBox( Eingabe: ) Eingabefeld; Eingabetext wird hier in der Variable Betrag gespeichert Berechnung Die Berechnung (Betrag/(100 + Mwst)*Mwst) wird in der Variable BetragMwst gespeichert MsgBox Text & erzeugt ein Ausgabefenster; das & ist ein so genannter Variable Verknüpfungsoperator; er ist notwendig um Ausgabetext mit Variablen zu verknüpfen. & _ stünden für eine zweizeilige Anweisung (wenn es in der nächsten Zeile weiter geht) Ende der Prozedur Hinweis: Um eine Prozedur (Makro) in der Code-Ansicht zu programmieren benötigt man immer ein Modul, welches im Explorerfenster erscheint.

13 In einem Modul können immer mehrere Makros (Prozeduren) angelegt werden. Mit einem rechten Mausklick auf ein entsprechendes Modul, kann man dieses über Entfernen von ModulX wieder löschen. Dabei gehen alle darin enthaltenen Prozeduren, wenn das Modul nicht vorher exportiert wurde. Eine Arbeitsmappe kann auch mehrere Module enthalten. Über das rechte Popupmenü des Code-Fensters lassen sich alle verfügbaren Prozeduren des aktiven Moduls auswählen: 3. VBA Programmier-Grundlagen 3.1. Konstanten Merkmale von Konstanten: o fester Wert o verändert sich bei der Programmabarbeitung nicht mehr o aussagekräftiger (als Wert allein) o Änderung nur an einer zentralen Stelle notwendig Beispiel: Const MWSt As Integer = 20

14 Die Definition einer neuen Konstante wird mit der Anweisung Const eingeleitet. Vor der Verwendung einer neuen Konstante sollte diese mit dem entsprechenden Datentyp versehen werden. Danach erfolgt immer die Wertzuweisung. Beim Beispiel wird der unveränderliche Wert 20 in der Konstante MWSt gespeichert Variablen Merkmale von Variablen: o Zentraler Bestandteil von Programmen o Einer Variablen kann ein Wert/Text zugewiesen werden o Später kann dieser Wert/Text über den Variablennamen weiterverarbeitet werden o Ein Eingabewert/text wird normalerweise in einer Variable gespeichert o Variablenname = Wert (z.b.: Alter = 20) o Die Werte von Variablen können sich im Programmablauf verändern Beispiel1: Dim Teilnehmer As Byte = 5 Beispiel2: Dim Teilnehmer As Byte, Betrag As Currency Teilnehmer = 5 Betrag = 100 Die Definition einer neuen Variable wird mit der Anweisung Dim eingeleitet. Vor der Verwendung einer neuen Variable sollte diese mit dem entsprechenden Datentyp versehen werden (As ). Wird dieser nicht angegeben verwendet VBA automatisch den Datentyp Variant. Er handelt sich dabei quasi um ein Multiformat das aber den höchsten Speicherbedarf aufweist. Danach kann der Variable ein Wert/Text zugewiesen werden. Bei Beispiel1 erfolgen diese Schritte in einem. Werden mehrere Variablen verwendet (Beispiel2) erstellt man am besten zu Beginn die Datentyp-Zuweisungen, und erst danach weist man den Variablen Werte/Text zu Datentypen Warum erhalten Variablen/Konstanten einen Datentyp? Der Datentyp bestimmt welche Art von Daten darin gespeichert werden können (z.b. ganze Zahl/Kommazahl, Text, Wahrheitswert). Ein Datentyp umfasst normalerweise

15 einen bestimmten Wertebereich, der einen bestimmten Speicherplatz zur Verfügung stellt. Durch die Angabe eines korrekten Datentyps ist sichergestellt, dass nie mehr Speicherplatz als erforderlich bereitgestellt wird. Dies hat insbesondere bei umfassenden Programmen Auswirkungen auf die Durchlaufzeit. Numerische Datentypen Wertebereich/Speicherbedarf Byte Ganze Zahlen zwischen 0 und 255 (1 Byte) Integer Ganze Zahlen zwischen und (2 Byte) Long Ganze Zahlen zwischen und (4 Byte) Single Fließkommazahl mit Genauigkeit von acht Stellen hinter dem Komma (4 Byte) Double Fließkommazahl mit einer Genauigkeit von 16 Stellen hinter dem Komma (8 Bytes) Currency Währungs-Datentyp; Festkommazahl mit 15 Stellen vor und vier Stellen nach dem Komma (8 Byte) Zeichenketten String (feste Länge) 0 bis Zeichen Bsp.: Dim Name$ String (variable Länge) 0 bis 2 Mrd. Zeichen Bsp.: Dim <Variable> As String * <Längenang.> Dim Text1 As String * 12 Text1 = Franz Berger Datum und Zeit Date Logische Werte Boolean Multiformat Variant Datums- und Zeit-Datentyp 01. Jänner 100 bis 31. Dezember :00:00 bis 23:59:49 (8 Byte) True oder False (kann nur wahr oder falsch sein) (2 Byte) Kann alle Datentypen aufnehmen; benötigt aber den meisten Speicherplatz; sparsame Verwendung sinnvoll; wird kein Datentyp angegeben verwendet VBA standardmäßig Variant (16 Byte)

16 Wichtiger Hinweis: Kommazahlen werden in VBA immer mit Punkt geschrieben! Typische korrekte Deklarationen von Variablen: Dim MWSt As Single (oder Integer bei ganzer Zahl) Dim Alter As Integer Dim Meldung As String Dim Gehalt As Currency Beispiel7a: Angabe: 07aVerbrauch_Angabe.xls Lösung: 07aVerbrauch_Loesung.xls Aufgabenstellung Erstellen Sie die Prozedur Verbrauch, die den Verbrauch pro 100 km (Liter) errechnet. Schreiben Sie als Kommentar: ' errechnet den Literverbrauch pro 100 km ' erstellt von DeinName Verwenden Sie die folgenden Variablen und versehen Sie diese mit einem geeigneten Datentyp. Weisen Sie den Variablen folgende Werte zu: Gefahrenekm: 500 VerbrauchteL: 40 Lassen Sie das Ergebnis über ein Ausgabefenster anzeigen (Verknüfung Text + Variable Zeichenketten verbinden) Hilfestellung Ergebnis = 100 * VerbrauchteL / GefahreneKm Sub Verbrauch() ' errechnet den Literverbrauch pro 100 km ' erstellt von Ernst Rodlmayr Dim GefahreneKm As Integer, VerbrauchteL As Currency, Ergebnis As Currency GefahreneKm = 500 VerbrauchteL = 40 Ergebnis = 100 * VerbrauchteL / GefahreneKm MsgBox "Verbrauch pro 100 km in Liter: " & Ergebnis

17 Ein- und Ausgabefenster Eingabefenster InputBox(Prompt, [Title], [Default], [Xpos], [Ypos], [HelpFile, Context]) Beschreibung der Elemente: InputBox Prompt Title Default Xpos, Ypos HelpFile, Context erzeugt ein Eingabefenster und liefert die Zeichenkette zurück, die der Benutzer eingibt steht für den angezeigten Ausgabetext; dieser steht immer unter Anführungszeichen und muss angegeben werden. Die nachfolgenden Komponenten sind optional. für die Beschriftung der Titelleiste (optional) steht für einen Vorgabewert der im Eingabefeld standardmäßig angezeigt wird, aber vom Benutzer verändert werden kann (optional) Abstand von der linken oberen Bildschirmecke in Pixel (optional) zur Verbindung des Dialogs mit einer Hilfe-Datei (optional) Hinweis: Die Parameter werden durch Komma getrennt. Wird ein Parameter übersprungen, aber ein darauf folgender benötigt, so wird der übersprungene Parameter mit einem Leerzeichen zwischen den Kommas angeführt (,,). Beispiel7b: Angabe: 07bVerbrauch_Angabe.xls Lösung: 07bVerbrauch_Loesung.xls

18 Aufgabenstellung7b Öffnen Sie die Prozedur Verbrauch. Anstatt der fixen Zuweisung der beiden Werte sollen die Eingaben über ein Eingabefenster erfolgen! Sub Verbrauch() ' errechnet den Literverbrauch pro 100 km ' erstellt von Ernst Rodlmayr Dim GefahreneKm As Integer, VerbrauchteL As Currency, Ergebnis As Currency GefahreneKm = InputBox("Gefahrene Kilometer:") VerbrauchteL = InputBox("Verbrauchte Liter:") Ergebnis = 100 * VerbrauchteL / GefahreneKm MsgBox "Verbrauch pro 100 km (Liter): " & Ergebnis Beispiel7c: Angabe: 07cVerbrauch_Angabe.xls Lösung: 07cVerbrauch_Loesung.xls Aufgabenstellung Erweitern Sie die Eingabefenster aus Beispiel7b um folgende Einstellungen: Eingabefenster1 - Titelleiste: Kilometereingabe Eingabefenster2 - Vorgeschlagener Wert: 50 (kein Title) Sub Verbrauch() ' errechnet den Literverbrauch pro 100 km ' erstellt von Ernst Rodlmayr Dim GefahreneKm As Integer, VerbrauchteL As Currency, Ergebnis As Currency GefahreneKm = InputBox("Gefahrene Kilometer:", "Kilometereingabe") VerbrauchteL = InputBox("Verbrauchte Liter:", 50) Ergebnis = 100 * VerbrauchteL / GefahreneKm MsgBox "Verbrauch pro 100 km (Liter): " & Ergebnis

19 Ausgabefenster Ohne Rückgabewert: MsgBox Prompt, [Buttons], [Title], [HelpFile, Context] Mit Rückgabewert: Ergebniswert = MsgBox (Prompt, [Buttons], [Title], [HelpFile, Context]) Beschreibung der Elemente: MsgBox Buttons Title HelpFile, Context erzeugt ein Ausgabefenster mit angegebenem Ausgabetext (Prompt). Die nachfolgenden Parameter sind optional gibt darzustellenden Schaltflächen (Ja/Nein/Abbrechen, Wiederholen/OK) an; zudem lassen sich bestimmte Symbole im Fenster mit ausgeben wie z.b. eine Infoblase (optional) steht für die Beschriftung der Titelleiste (optional) darüber könnte man eine Hilfedatei für den Dialog definieren (optional) Es gibt zwei Varianten von Ausgabefenstern. Wir verwenden zunächst ein Ausgabefenster ohne Rückgabewert. Ein Ausgabefenster mit Rückgabewert kommt dann zum tragen, wenn dem Benutzer verschiedene Schaltflächen angeboten werden und später überprüft wird welchen Button der Benutzer gedrückt hat. Welche Schaltfläche das war wird hier in einer Variable gespeichert. Beim Ausgabefenster mit Rückgabewert werden runde Klammern verwendet. Bsp.: Zustimmung = MsgBox( Sind Sie dafür? ) Button-Parameter der MsgBox-Funktion: Parameter Beschreibung Abbildung vbcritical Warnhinweis vbexclamation vbinformation vbquestion vbokcancel vbokonly Achtung Infoblase Frage Buttons: OK Abbrechen Button: OK

20 vbretrycancel vbsystemmodal vbyesno vbyesnocancel Buttons: Wiederholen Abbrechen Modale Anzeige (Erst wenn das Fenster geschlossen wird kann weiter gearbeitet werden.) Buttons: Ja Nein Buttons: Ja Nein Abbr. Hinweis: Standardmäßig wird zu einem Symbol nur ein OK-Button mit ausgegeben. Werden andere Button-Parameter benötigt, so lassen sich diese mit einem Pluszeichen hinzufügen; Bsp.:, vbquestion + vbyesno, Beispiel7d: Angabe: 07dVerbrauch_Angabe.xls Lösung: 07dVerbrauch_Loesung.xls Aufgabenstellung7d Das Ausgabefenster soll folgende Parameter aufweisen: - Infoblase links - Beschriftung Ergebnis - OK-Button Sub Verbrauch() ' errechnet den Literverbrauch pro 100 km ' erstellt von Ernst Rodlmayr Dim GefahreneKm As Integer, VerbrauchteL As Currency, Ergebnis As Currency GefahreneKm = InputBox("Gefahrene Kilometer:", "Kilometereingabe") VerbrauchteL = InputBox("Verbrauchte Liter:", 50) Ergebnis = 100 * VerbrauchteL / GefahreneKm MsgBox "Verbrauch pro 100 km (L): " & Ergebnis, vbinformation, "Ergebnis" Beispiel8: Angabe: 08Angabe.xls Lösung: 08Loesung.xls

21 Aufgabenstellung8a 5. Öffnen Sie die Arbeitsmappe (08Angabe.xls). 6. Erstellen Sie für diese Arbeitsmappe ein neues Modul in welches die folgenden zwei Prozeduren erstellt werden sollen. Achten Sie dabei auf eine entsprechende Kommentierung der Prozeduren 7. Erstellen Sie die Prozedur GroesserKleiner Es sollen zwei Zahlen (Zahl1 und Zahl2) über ein Eingabefenster eingegeben werden Anschließend soll geprüft werden, ob Zahl1 größer als Zahl2 ist. Mit einem entsprechenden Datentyp soll überprüft werden, ob diese Prüfung wahr oder falsch ist 8. Lassen Sie in einem Ausgabefenster angeben, ob Zahl1 > Zahl2 wahr oder falsch ist. Sub GroesserKleiner() ' Prüft ob Zahl1 > Zahl2 ' erstellt von Ernst Rodlmayr Dim Zahl1 As Integer, Zahl2 As Integer Dim groesser As Boolean Zahl1 = InputBox( Bitte Zahl1 eingeben: ) Zahl2 = InputBox( Bitte Zahl2 eingeben: ) groesser = Zahl1 > Zahl2 MsgBox Zahl1 > Zahl2 ist & groesser Vergleichsoperatoren in VBA: >=, <=, >, <, <> Logische Operatoren: AND/OR/NOT Verkettungsoperator: & Potenzieren erfolgt über das Zeichen ^ (2² wird also mit 2^2 dargestellt)

22 Aufgabenstellung8b 9. Arbeiten Sie mit der Arbeitsmappe (Beispiel8_Angabe.xls) weiter. 10. Erstellen Sie im vorhandenen Modul eine neue Prozedur namens VolumenZylinder, die das Volumen einer Regentonne (Zylinder) in Liter berechnen soll. 11. Die Formel dazu lautet: V = π * r² * h / 1000 (Volumen = Pi * Radius² * Höhe) 12. Deklarieren Sie die benötigten Variablen und eine Konstante für Pi. 13. Radius und Höhe sollen über ein Eingabefenster eingegeben werden (in cm). 14. Das Volumen soll über ein Ausgabefenster dargestellt werden (Das Volumen beträgt (l):. 15. Die Prozedur soll über ein Symbol gestartet werden. 16. Speichern Sie die Arbeitsmappe (Beispiel8_Loesung.xls) Sub VolumenZylinder() ' berechnet das Volumen eines Zylinders ' erstellt von Ernst Rodlmayr Dim Volumen As Single, Radius As Single, Hoehe As Single Const Pi As Double = Radius = InputBox("Bitte Radius in cm eingeben:") Hoehe = InputBox("Bitte Zylinder-Höhe in cm eingeben:") Volumen = Pi * Radius ^ 2 * Hoehe / 1000 MsgBox "Das Volumen beträgt (l): " & Volumen 3.5. Arrays Merkmale von Arrays (Datenfeldern): - ermöglicht es mehrere Werte in nur einer Variable zu speichern - alle Werte haben denselben Datentyp - die einzelnen Werte werden über einen Index angesprochen Dim Arrayname ([Untergrenze To ] Obergrenze) As Datentyp Beispiel: Dim Lottozahlen (1 To 6) As Byte Ansprechen des ersten Elements: Lottozahlen(1)

23 Beispiel9: Angabe: 09Array_Angabe.xls Lösung: 09Array_Loesung.xls Aufgabenstellung Erstellen Sie die Prozedur Lottozahlenarray mit dem Array namens Lottozahlen vom Datentyp Byte. Darin sollen die sechs Lottozahlen (45, 30, 21, 28, 31, 4) gespeichert werden. Zuletzt soll die Lottozahl der 3ten Stelle über ein Ausgabefenster ausgegeben werden. Sub Lottozahlenarray() ' Speichert 6 Zahlen in ein Array und gibt Position 3 aus Dim Lottozahlen (1 To 6) As Byte Lottozahlen(1) = 45 Lottozahlen(2) = 20 Lottozahlen(3) = 21 Lottozahlen(4) = 28 Lottozahlen(5) = 31 Lottozahlen(6) = 4 MsgBox Lottozahlen(3) 4. Prinzip der VBA Programmierung VBA ist wie viele andere Programmiersprachen ereignisorientiert und objektorientiert. Ereignisorientiert heißt, dass sich bestimmte Ereignisse (Vorgänge) auslösen lassen wenn der Benutzer z.b. einen Menüpunkt anwählt, eine Schaltfläche oder ein Symbol anklickt. Ereignisorientierung - Klick mit der Maus (z.b. Start eines bestimmten Makros mit Klick auf eineinen Button) - Tastatureingaben mit abschließendem Enter - Öffnen/Schließen einer Arbeitsmappe oder eines Fensters Objektorientiert bedeutet, dass es in Excel Objekte gibt, die sich alle sprechen lassen. Folglich kann ich die Eigenschaften dieser Objekte bestimmen und verändern (z.b. Schutz des aktiven Arbeitsblattes).

24 Objektorientierung - Alle Objekte (von der Arbeitsmappe [=Workbook] über das Arbeitsblatt [= Worksheet] bis zur Zelle [= Cell], können mit VBA angesprochen werden - Eigenschaften: sind veränderbare Zustände eines Objektes (z.b. Name, Farben, etc.) - Methoden: sind bestimmte Vorgänge, die sich auf ein Objekt beziehen (z.b. ausdrucken) 4.1. Eigenschaften Eigenschaften eines Objektes ermitteln: Variablenname = Objekt.Eigenschaft z.b.: Pfad = ActiveWorkbook.Fullname ActiveWorkbook aktive Arbeitsmappe ActiveSheet wäre ein aktives Arbeitsblatt Objekt und Eigenschaft sind durch Punkt voneinander getrennt Eigenschaften eines Objektes festlegen: Objekt.Eigenschaft = neuerwert z.b.: ActiveWorkbook.Saved = True Weist der aktiven Arbeitsmappe den Wert Wahr zu (nach letzter Änderung gespeichert) Eigenschaft FullName Path Worksheets Saved Beschreibung Enthält Speicherort und Name einer Excel-Datei Gibt Speicherort einer Excel-Datei zurück Listet alle enthaltenen Arbeitsblätter einer Arbeitsmappe auf Hat den Wert true wenn die Arbeitsmappe nach der letzten Änderung gespeichert wurde Beispiel10: Angabe: 10Object_Angabe.xls Lösung: 10Object_Loesung.xls

25 Aufgabenstellung10 Öffnen Sie die Datei 10Object_Angabe.xls Legen Sie ein neues Modul an und erstellen Sie die Prozedur PfadangabeAnzeigen. Lassen Sie damit den Speicherort und den Dateinamen über ein Ausgabefenster anzeigen. Sub PfadangabeAnzeigen() ' zeigt Dateiname & Speicherort an Dim Pfad Pfad = ActiveWorkbook.FullName MsgBox Pfad 4.2. Methoden Methode eines Objektes ausführen: Object.Methode [Parameterliste] z.b.: Activesheet.Protect abc (schützt die aktuelle Arbeitsmappe mit einem Kennwort) Methode PrintOut Protect SaveAs Close Beschreibung Druckt eine Arbeitsmappe aus Schützt eine Arbeitsmappe gegen Veränderung Speichert eine Arbeitsmappe unter einem neuen Namen oder Format Schließt die Arbeitsmappe Beispiel11: Angabe: 11Protect_Angabe.xls Lösung: 11Protect_Loesung.xls

26 Aufgabenstellung11 Öffnen Sie die Datei 11Protect_Angabe.xls Die erste Schaltfläche Druck wurde bereits mit dem Makro Druck verbunden, welches die gesamte Arbeitsmappe ausdruckt. Fügen Sie in Modul1 eine weitere Prozedur namens Schutz hinzu, welche das aktive Arbeitsblatt vor Veränderungen schützt (Passwort = abc). Der Schutz soll über den zweiten Button aufrufbar sein. Sub Schutz() ' schützt das aktive Arbeitsblatt ActiveSheet.Protect "abc" Hinweis: Das obige Passwort kann vom Benutzer gelesen werden sobald dieser den VBA Code-Editor öffnet. Es gibt aber eine Möglichkeit diese Ansicht vor neugierigen Augen mit einem Passwort zu schützen. VBA-Editor: Extras Eigenschaften von - Schutz (Anzeige sperren). Hier kann auch ein Kennwort angegeben werden. Beispiel12: Angabe: 12_Zellenausgabe_Angabe.xls Lösung: 12_Zellenausgabe_Loesung.xls Aufgabenstellung12 Wir gehen von Beispiel8 (VolumenZylinder) aus, wo nach Eingabe von Radius und Höhe das Volumen berechnet und in einem Ausgabefenster ausgegeben wird. Anstatt eines Ausgabefensters sollen die Werte: - Radius - Höhe - Volumen nun aber in die Zellen B3, C3 und D3 geschrieben werden.

27 Sub VolumenZylinder() ' Berechnet das Volumen eines Zylinders ' erstellt von Ernst Rodlmayr Dim Volumen As Single, Radius As Single, Hoehe As Single Const Pi As Double = Radius = InputBox("Bitte Radius in cm eingeben:") Hoehe = InputBox("Bitte Zylinder-Höhe in cm eingeben:") Volumen = Pi * Radius ^ 2 * Hoehe / 1000 Range("B3").Value = Radius Range("C3").Value = Hoehe Range("D3").Value = Volumen Für Volumen, Radius und Hoehe verwendest du am besten den Datentyp Single (Kommazahl mit 8 Nachkommastellen). Bei Currency erhielten wir in der Ausgabezelle das -Zeichen vor der Zahl, was nicht ganz passend wäre bei Größenangaben. Über die Anweisung Range lassen sich Zellen oder Zellbereiche ansprechen. Mit Range ( B3 ).Value = Radius wird der Wert und Inhalt der Zelle B3 von der Variable Radius bezogen und in die Zelle geschrieben. Dieser Wert wurde zurvor über ein Eingabefenster vom Benutzer eingegeben und in die Variable Radius gespeichert. 5. Kontrollstrukturen Unsere bisherigen Programme enthalten Anweisungen, die von oben nach unten genau einmal ausgeführt werden. Man spricht in diesem Fall auch von einer Sequenz, also einer sequentiellen Ausführung nacheinander. Bei Programmen ist es aber häufig notwendig, dass bestimmte Anweisungen mehrmals oder gar nicht ausgeführt werden. Dies erreicht man mittels Kontroll-/Ablaufstrukturen, also verschiedenen Arten von Verzweigungen (Wenn Dann ) und Schleifen.

28 Verzweigungen Mit Verzweigungen lassen sich bestimmte Zustände abfragen bzw. Prüfungen durchführen. Ist die angegebene Prüfung wahr werden die nachfolgenden Anweisungen ausgeführt Einseitige Verzweigungen If Bedingung Then Anweisung einzeilig sinnvoll bei kurzer Anweisung hat kein End If If Bedingung Then Anweisung1 Anweisung2 End If mehrzeilig; End if erforderlich sinnvoll bei vielen Anweisungen (= mehrzeiliger Anweisungsblock) Die Einrückung des Anweisungsblocks ist aus Gründen der Übersichtlichkeit höchst sinnvoll! Beispiel13: Angabe: 13_EinseitigeVerzweigung_Angabe.xls Lösung: 13_EinseitigeVerzweigung_Loesung.xls Aufgabenstellung13a Der Einkaufspreis wird über ein Eingabefenster eingegeben. Es soll ein Vorschlagswert von 100 angezeigt werden. Standardmäßig zahlt der Kunde diesen normalen Einkaufpreis. Lassen Sie den Einkaufspreis über ein Ausgabefenster mit Infosymbol und folgendem Wortlaut ausgeben: Endpreis:... Euro (bis hierher bereits gelöst) Wenn der Kunde aber um mindestens 100 einkauft bekommt er 3 % Rabatt vom Einkaufspreis abgezogen. Verwenden Sie eine einzeilige Verzweigung (WENN-DANN)

29 Sub RabattBerechnen() Dim Einkaufspreis As Currency Einkaufspreis = InputBox("Bitte geben Sie den Betrag ein:",, 100) If Einkaufspreis >= 100 Then Einkaufspreis = Einkaufspreis - Einkaufspreis * 0.03 MsgBox "Endpreis: " & Einkaufspreis & " Euro", vbinformation Wir haben hier eine einfache Verzweigung (If Then) eingebaut, deren Anweisungsteil relativ kurz ist, sodass sich die Verzweigung in nur einer Zeile angeben lässt. Ist die Prüfung (Bedingung) Einkaufspreis >= 100 positiv wird der Dann-Teil ausgeführt, wo eine Anweisung folgt. Diese Anweisung wird nur bei positiver Bedingung ausgeführt, während alle übrigen Programmteile ohne Wenn und Aber ausgeführt werden. Aufgabenstellung13b Kopieren Sie den gesamten Programmcode und fügen Sie ihn unter dem bisherigen ein. Nennen Sie die Prozedur RabattBerechnen2(). Verwenden Sie mehrzeilige Anweisungen (WENN-DANN) Worin besteht der Unterschied? Unterschied: Das If ist mehrzeilig aufgebaut und wird deswegen mit einem End if abgeschlossen. Sub RabattBerechnen2() Dim Einkaufspreis As Currency, Rabatt As Currency Einkaufspreis = InputBox("Bitte geben Sie den Betrag ein:",, 100) If Einkaufspreis >= 100 Then Rabatt = Einkaufspreis * 0.03 Einkaufspreis = Einkaufspreis - Rabatt End If MsgBox "Endpreis: " & Einkaufspreis & " Euro", vbinformation

30 Wir haben hier zwei Zeilen mit jeweils einer Anweisung eingefügt (fett hervorgehoben). Darunter ließen sich noch beliebig viele weitere Anweisungen einfügen. Stehen mehrere Anweisungen untereinander spricht man auch von einem Anweisungsblock. Sie werden nur ausgeführt wenn die Prüfung positiv ist. Aufgabenstellung13a Kopieren Sie den gesamten Programmcode und fügen Sie ihn unter dem bisherigen ein. Nennen Sie die Prozedur RabattBerechnen3(). Erweitern Sie das Beispiel um folgende Bedingung: Kunden erhalten nur dann 3 % Rabatt, wenn der Einkaufspreis mindestens 100 Euro beträgt UND der Kunde beim Vorteilsclub ist. In einem eigenen Eingabefenster soll deswegen angegeben werden, ob der Kunde beim Vorteilsclub ist. Mögliche Werte: true/false (wahr/falsch) Sub RabattBerechnen3() Dim Einkaufspreis As Currency, Rabatt As Currency, Vorteilsclub As Boolean Einkaufspreis = InputBox("Bitte geben Sie den Betrag ein:",, 100) Vorteilsclub = InputBox("Vorteilsclub-Mitglied? wahr/falsch") If Einkaufspreis >= 100 And Vorteilsclub = True Then Rabatt = Einkaufspreis * 0.03 Einkaufspreis = Einkaufspreis - Rabatt End If MsgBox "Endpreis: " & Einkaufspreis & " Euro", vbinformation Dabei nehmen wir die Variable Vorteilsclub mit auf. Sie speichert die Eingabe des Benutzers (InputBox). Dieser soll hier wahr oder falsch (true/false) eingeben. Mit And erweitern wir unser Wenn mit der weiteren Prüfung Vorteilsclub = True. Nur wenn beide Bedingungen erfüllt sind wird der darauffolgende Anweisungsblock ausgeführt. Vergleichsoperatoren a > b liefert true wenn a größer b (Zahl1 Mod 2) = 0 liefert true wenn Zahl1 eine gerade Zahl ist (Zahl > 100) And (Zahl < 500) beide Bedingungen müssen erfüllt sein DANN.. (Zahl > 100) Or (Zahl < 500) eine Bedingungen muss erfüllt sein DANN

31 Zweiseitige Verzweigung If Bedingung Then Anweisung1 Anweisung2 Else AnweisungA AnweisungB End If hier können beliebig viele Anweisungen folgen enthält einen Else-Teil (Sonst) hier können beliebig viele Anweisungen folgen Im Unterschied zur einseitigen Verzweigung verfügt die zweiseitige über einen zweiten Zweig, nämlich dem Else-Teil (Sonst). Wird die Bedingung des IF erfüllt (true), dann wird der Then-Zweig abgearbeitet. Der Anweisungsblock nach dem Else wird nicht berücksichtigt. Ist die Bedingung hingegen nicht erfüllt wird der Else-Zweig ausgeführt. Der vorherige Anweisungsblock nach Then bleibt unberücksichtigt. Beispiel14: Angabe: 14_ZweiseitigeVerzweigung_Angabe.xls Lösung: 14_ZweiseitigeVerzweigung_Loesung.xls Aufgabenstellung Der Einkaufspreis wird über ein Eingabefenster eingegeben. Es soll ein Vorschlagswert von 100 angezeigt werden. Wenn der Einkaufspreis größer/gleich 100 ist bekommt der Kunde 3 % Rabatt vom Einkaufspreis abgezogen und der Endpreis wird über ein Ausgabefenster ausgegeben. Ansonsten erscheint ein Ausgabefenster mit dem Endpreis (ohne Rabatt) und dem Hinweis Ab einem Betrag von 100 erhalten Sie 3 % Rabatt!

32 Sub RabattBerechnen() Dim Einkaufspreis As Currency, Rabatt As Currency Einkaufspreis = InputBox("Bitte geben Sie den Betrag ein:",, 100) If Einkaufspreis >= 100 Then Rabatt = Einkaufspreis * 0.03 Einkaufspreis = Einkaufspreis - Rabatt MsgBox "Endpreis: " & Einkaufspreis & " Euro" Else MsgBox "Endpreis: " & Einkaufspreis & " Euro" & vbcrlf & _ "Ab einem Betrag von 100 erhalten Sie 3 % Rabatt" End If Dieses Beispiel verfügt über einen Else-Zweig, der in allen restlichen Fällen zum Tragen kommt, wo die Prüfung nicht erfüllt ist. Der Ausdruck vbcrlf (Visual Basic Carriage return and Line feed) weiter unten, steht für eine Zeilenschaltung. & _ bedeutet, dass diese Anweisung in der nächsten Zeile fortgesetzt wird. Das macht nur dann Sinn, wenn der Bildschirm kleiner ist und man ansonsten zu weit nach rechts scrollen müsste. Beispiel15: Angabe: 15_ZweiseitigeVerzweigung_Angabe.xls Lösung: 15_ZweiseitigeVerzweigung_Angabe.xls Aufgabenstellung Überprüfen Sie mit der Prozedur Verzweigung, ob die aktuelle Zelle einen Inhalt enthält (ActiveCell.Value = ""). Wenn die Zelle leer ist, dann lassen Sie in einem Ausgabefenster ausgeben: Zelle ist leer ansonsten Zelle ist gefüllt. Sub Verzweigung() If ActiveCell.Value = "" Then Else MsgBox "Zelle ist leer!" MsgBox "Zelle ist gefüllt!" End If

33 Mehrseitige Verzweigung If Bedingung1 Then Anweisung1a Anweisung1b ElseIf Bedingung2 Then Anweisung2a Anweisung2b [Else Anweisung3a Anweisung3b ] End If hier können beliebig viele Anweisungen folgen ElseIf (ohne Leerzeichen dazwischen) hier können beliebig viele Anweisungen folgen Else-Teil ist optional! hier können beliebig viele Anweisungen folgen Der erste Anweisungsblock dessen Bedingung zutrifft wird abgearbeitet. Alle anderen Anweisungsblöcke bleiben unberücksichtigt. Danach findet keine Bedingungsprüfung mehr statt. Waren keine Bedingungen positiv kommen die Anweisungen unter Else zum tragen. De Else-Zweig ist optional und könnte auch weggelassen werden. Es können beliebig viele ElseIf-Zweige eingefügt werden. Die mehrseitige Verzweigung funktioniert ähnlich wie die Fallauswahl (Case). Beispiel16: Angabe: 16_MehrseitigeVerzweigung_Angabe.xls Lösung: 16_MehrseitigeVerzweigung_Loesung.xls Aufgabenstellung Erstellen Sie die Prozedur RabattBerechnen. Lassen Sie den Einkaufspreis über ein Ausgabefenster ausgeben. Berücksichtigen Sie folgende Rabattstaffelung (entgegenkommend formuliert ): - wenn unter 100 dann kein Rabatt; - wenn unter 250 dann 5 % Rabatt - wenn unter 500 dann 10 % Rabatt - ansonsten 12 % Rabatt

34 Sub RabattBerechnen() Dim Einkaufspreis As Currency, Rabatt As Single Einkaufspreis = InputBox("Bitte geben Sie den Einkaufspreis ein:") If Einkaufspreis < 100 Then Rabatt = 0 ElseIf Einkaufspreis < 250 Then Rabatt = 0.05 ElseIf Einkaufspreis < 500 Then Rabatt = 0.1 Else Rabatt = 0.12 End If Einkaufspreis = Einkaufspreis - Einkaufspreis * Rabatt MsgBox "Endpreis " & Einkaufspreis & " " Rabatt ist hier kein Betrag sondern eine Kommazahl die einen Prozentwert darstellt. Im obigen Beispiel wird zuerst geprüft ob der Einkaufspreis < 100 ist. Ist das der Fall wird die Anweisung darunter ausgeführt. Unter dieser Anweisung (Rabatt = 0) könnten natürlich noch weitere folgen. Unser Beispiel ist aber schlicht gehalten. Danach wir das Wenn beendet, ohne auf die anderen Prüfungen einzugehen. Ist die erste Prüfung aber negativ geht Excel zum nächsten ElseIf bis er die erste positive Bedingung findet. Kann er aber keine entdecken wird der Else-Teil ausgeführt und das Wenn beendet. Gibt es keinen Else-Teil wird das If beendet und die restlichen Anweisungen (außerhalb des If) werden normal abgearbeitet. Lösen Sie Übung1 (Siehe Anhang): Angabe: UE1_MehrseitigeVerzweigung_Angabe.xls Lösung: UE1_MehrseitigeVerzweigung_Loesung.xls

35 Fallauswahl (Case) Vergleichsausdruck z.b.: Case Is > 250 Select Case Variable Case Is Anweisungsblock1 Case Is Anweisungsblock2 [Case Else Anweisungsblock n] End Select Bereich z.b.: Case 23 To 25 Select Case Variable Case To Anweisungsblock1 Case To Anweisungsblock2 [Case Else Anweisungsblock n] End Select Werteliste z.b.: Case 23, 25, 27 Select Case Variable Case Wert1, Wert2,... Anweisungsblock1 Case Wert, Anweisungsblock2 [Case Else Anweisungsbl. n] End Select Beispiel17: Angabe: 17_Fallauswahl_Angabe.xls Lösung: 17_Fallauswahl_Loesung.xls Aufgabenstellung17a Gehen Sie in die Code-Ansicht und formulieren Sie das Beispiel so um, dass ausschließlich die Fallauswahl zum Einsatz kommt. Sub RabattBerechnen() Dim Einkaufspreis As Currency, Rabatt As Single Einkaufspreis = InputBox("Bitte geben Sie den Einkaufspreis ein:") Select Case Einkaufspreis Case Is < 100 Rabatt = 0 Case Is < 250 Rabatt = 0.05 Case Is < 500 Rabatt = 0.1 Case Else End Select Rabatt = 0.12 Einkaufspreis = Einkaufspreis - Einkaufspreis * Rabatt MsgBox "Endpreis: " & Einkaufspreis & " "

36 Wir haben nun Beispiel 16 mit der Fallauswahl gelöst und dabei Vergleichsausdrücke verwendet (z.b.: < 100). Dass es hier noch andere Möglichkeiten gibt werden wir in Beispiel17b demonstrieren. Die Variable mit der ein Vergleich stattfinden soll steht hier immer zu Beginn (Select Case Einkaufspreis). Es soll darauf hingewiesen werden, dass für obige Prüfungen von Excel der Reihe nach durchgearbeitet werden. Gibt es bei einem Einkaufspreis von 100 bis 249 etwa einen 5%igen Rabatt so reicht es aus vorher alle Fälle wegzuprüfen die unter 100 liegen. Bei der zweiten Prüfung < 250 sind diese Fälle schon weggeprüft und es können nur mehr Einkaufspreis ab 100 weiterkommen. Der Case Else-Teil ist wie bei der mehrseitigen Verzweigung optional und kann bei Bedarf weggelassen werden. Aufgabenstellung17b Erstellen Sie im vorhandenen Modul die neue Prozedur QuartalBerechnen. Lassen Sie in einem Eingabefenster das Geburtsmonat als Zahl eingeben. Anschließend soll das Quartal in einem Ausgabefenster angezeigt werden. Entspricht der Eingabewert nicht den vordefinierten Werten erscheint der Hinweis "Eingabefehler" im Ausgabefenster mit dem roten Warn- /Abbruchsymbol. Sub QuartalBerechnen() Dim Monat As Byte Monat = InputBox("Bitte geben Sie Ihr Geburtsmonat als Zahl ein:") Select Case Monat Case Is <= 3 MsgBox "1. Quartal" Case 4 To 6 MsgBox "2. Quartal" Case 7, 8, 9 MsgBox "3. Quartal" Case 10 To 12 MsgBox "4. Quartal" Case Else 'Vergleichsausdruck (Option1) 'Bereich (Option2) MsgBox "Eingabefehler", vbcritical End Select 'Werteliste durch Komma getrennt (Option3)

37 Schleifen Bisher wurden unsere erstellten Programmzeilen maximal einmal (oder gar nicht) durchlaufen. Sollen aber bestimmte Anweisungen mehrmals hintereinander ausgeführt werden, benötigt man Schleifen. Anstatt die gleichen Anweisungen x-fach ins Programm zu schreiben, ist die Verwendung einer Schleife viel ökonomischer. Es gibt verschiedene Arten von Schleifen For Next-Schleife Die For Next-Schleife ist eine zählergesteuerte Schleife und durchläuft vom Startwerte ausgehend einen bestimmten Bereich bis der angegebene Endwert erreicht wird. For Zähler = Startwert To Endwert [Step Schrittweite] Anweisung1 Anweisung2 hier können weitere Anweisungen folgen Next Zähler Bestandteil For Zähler Step Anweisung1, Anweisung2, Next Zähler Erläuterung leitet Schleife ein benötigt einen Startwert und einen Endwert Die Angabe einer Schrittweite ist optional. Standardmäßig wird 1 verwendet. Hier folgt der Anweisungsblock der bei jedem Durchlauf wiederholt wird veranlasst die Erhöhung/Verminderung des Zählers um die angegebene Schrittweite und springt zurück zum Anfang der Schleife Die Anweisungen werden so oft durchlaufen, bis der Zähler größer ist als der Endwert.

38 Beispiel18a: Angabe: 18a_Schleife1_Angabe.xls Lösung: 18a_Schleife1_Loesung.xls Aufgabenstellung18a Erstellen Sie die Prozedur Zahlenausgeben1. Diese soll mithilfe einer Schleife die Zahlen von 1 bis 10 in die Zellen A1 bis A10 des ersten Tabellenblattes der aktiven Arbeitsmappe ausgeben. Sub Zahlenausgeben1() Dim i As Integer For i = 1 To 10 ActiveWorkbook.Worksheets(1).Cells(i, 1) = i Next i ODER Lösung2 Sub Zahlenausgeben1b() 'andere Möglichkeit 'Mauszeiger bleibt immer auf Zelle A1 Dim i As Integer Sheets("Tabelle1").Activate Range("A1").Select For i = 0 To 10 ActiveCell.Offset(i, 0) = i Next i Hier wird zuerst die Variable i deklariert. Sie wird als Zähler der Schleife verwendet und geht von 1 bis 10 (i = 1 To 10). Die Variable i ist beim ersten Durchlauf 1 und erhöht sich mit jedem weiteren Durchlauf um den Faktor 1. Der aktuelle Wert wird in die Aktive Arbeitsmappe und das erste (vorderst gereihte) Tabellenblatt geschrieben und zwar in die Zelle (i, 1): Das erste Argument nach der Klammer gibt dabei die Zeile an, wo gestartet wird. Das zweite Argument nach dem Komma steht für die Spalte. In diesem Fall gehen die Einträge von Zeile1 (Spalte1) bis Zeile10 (Spalte1). Spalte1 bleibt also immer gleich. Stünde bei Zeile auch 1 (also 1,1) würde immer nur die Zelle A1 beschrieben werden.

39 Über Next i wird der Zähler erhöht und ein neuer Durchlauf beginnt (solange i den Endwert nicht überschreitet) Bei Lösung2 wird das Argument wird über Sheets("Tabelle1").Activate die gleichnamige Tabelle angesprochen. Range("A1").Select wählt die Zelle A1 aus. ActiveCell.Offset(i, 0) beinhaltet eine Zeilen- und Spaltenverschiebung ausgehend von der aktiven Zelle. Das erste Argument steht dabei für die Zeilenverschiebung und das zweite Argument für die Spaltenverschiebung Do While Loop-Schleife Die Do While Loop-Schleife wiederholt einen Anweisungsblock solange eine bestimmte Bedingung erfüllt ist (true). Das unterscheidet sie von der vorigen Schleife. Man spricht hier auch von einer bedingten Wiederholung. Do While Bedingung Anweisung1 Anweisung2 Loop hier können weitere Anweisungen folgen Do While Bedingung leitet eine Schleife ein, deren Durchlauf an die Erfüllung einer Bedingung gebunden ist. Loop bedeutet dabei, dass die Schleife hier zu Ende ist und die Bedingung erneut geprüft werden muss. Beispiel18b: Angabe: 18b_Schleife2_Angabe.xls Lösung: 18b_Schleife2_Loesung.xls Aufgabenstellung Erstellen Sie die Prozedur Zahlenausgeben2. Diese soll mithilfe einer Schleife die Zahlen von 1 bis 10 in die Zellen A1 bis A10 des ersten Tabellenblattes der aktiven Arbeitsmappe untereinander ausgeben... ABER nur solange der Benutzer diese Aktion nicht abbricht. Dazu wird nach einer Zellausgabe ein Ausgabefenster angezeigt mit dem Text: Weitermachen? und den Buttons Ja und Nein. Der gedrückte Button wird in der Variable Weiter gespeichert.

40 Sub Zahlenausgeben2() Dim i As Integer, Weiter As Byte i = 1 Weiter = vbyes Do While Weiter = vbyes ActiveWorkbook.Worksheets(1).Cells(i, 1) = i Weiter = MsgBox("Weitermachen?", vbyesno + vbquestion) i = i + 1 Loop Wir definieren hier die Variablen i und Weiter. Erstere lassen wir später in der Schleife ausgeben und erhöhen den Wert dann um eins (i = i + 1). Damit Excel in die Schleife hineingeht schreiben wir den Wert des vbyes-buttons in die Variable Weiter (Weiter = vbyes). Jetzt wird die Schleife betreten. ActiveWorkbook spricht die aktive Arbeitsmappe an Worksheets(1) spricht das erste Arbeitsblatt der Arbeitsmappe an Cells(2, 3) spricht eine Zelle an; in diesem Fall würde Zeile 2 und Spalte 3 (also Zelle C2) angesprochen werden. In unserem Beispiel fixieren wir lediglich die Spalte1 und lassen die Zeile aber veränderlich, damit die anderen Werte darunter geschrieben werden Cells(i, 1) und nicht immer über die gleiche Zelle ;-) Beim Ausgabefenster MsgBox verwenden wir erstmal eine Klammer und setzen davor die Variable Weiter. Das Ausgabefenster verfügt über die Buttons Yes und No und wir speichern damit das Antwortverhalten des Benutzers in die Variable Weiter. Danach wird wie schon beschrieben i um eins erhöht und mit Loop kommt Excel wieder an den Anfang der Schleife. Solange nun Weiter = vbyes ist, also der Benutzer diese Schaltfläche klickt wird die Schleife immer wieder durchlaufen. Ist diese Bedingung nicht gegeben (wie beim Klicken von vbno), wird die Prozedur beendet. Lösen Sie Übung2 (siehe Anhang): Angabe: UE2_Schleife2_Angabe.xls Lösung: UE2_Schleife2_Loesung.xls

41 Kontrollstrukturen Vertiefung Beispiel19a: Angabe: 19a_If_Wiederholung_Angabe.xls Lösung: 19a_If_Wiederholung_Loesung.xls Aufgabenstellung19a Bei Frauen beträgt der empfohlene Maximalpuls bei sportlicher Betätigung 225 minus Lebensalter, bei Männern 220 minus Lebensalter. Erstellen Sie die Prozedur MaximalpulsBerech, die nach Eingabe des Geschlechts und Alters den empfohlenen Maximalpuls berechnet. Lassen Sie dabei das Endergebnis über ein Ausgabefenster anzeigen: Der empfohlene Maximalpuls beträgt: Sub MaximalpulsBerech() Dim Geschlecht As String, Alter As Byte, MaxPuls As Byte Geschlecht = InputBox("Geben Sie das Geschlecht ein (m/w): ") Alter = InputBox("Geben Sie das Alter ein: ", "Alterseingabe") If Geschlecht = "w" Then MaxPuls = 225 Alter Else MaxPuls = 220 Alter End If MsgBox "Der empfohlene Maximalpuls beträgt: " & MaxPuls Dieses Beispiel beinhaltet abgesehen von einer neuen Problem- und Aufgabenstellung keine Neuerungen. Es wird über Verzweigungen (Wenn Dann Sonst) gelöst. Ist das Geschlecht w dann geht das Programm in den ersten Teil der Verzweigung. In allen anderen Fällen (Else) kommt aber die zweite Verzweigung an die Reihe. Davon abweichend Lösungen mit ElseIf Then anstatt des Else-Teiles sind ebenso möglich. Beispiel19b: Angabe: 19b_If_Wiederholung_Angabe.xls Lösung: 19b_If_Wiederholung_Loesung.xls

42 Aufgabenstellung19b Verbessern Sie Beispiel 19a. Die Eingabe eines korrekten Geschlechts soll sofort geprüft werden. Wird weder m noch w eingegeben erscheint in einem Ausgabefenster sofort Geschlecht-Eingabefehler!. Bei Eingabe von w und auch m erscheint das Alter-Eingabefenster. Danach werden jeweils die individuellen Berechnungen durchgeführt. Sub MaximalpulsBerech() Dim Geschlecht As String, Alter As Byte, MaxPuls As Byte Geschlecht = InputBox("Geben Sie das Geschlecht ein (m/w): ") If Geschlecht <> "m" And Geschlecht <> "w" Then MsgBox "Geschlecht-Eingabefehler!" Else Alter = InputBox("Geben Sie das Alter ein: ", "Altersberechnung") If Geschlecht = "w" Then MaxPuls = 225 Alter Else MaxPuls = 220 Alter End If MsgBox "Der empfohlene Maximalpuls beträgt: " & MaxPuls End If Ausgehend von Beispiel19a fügen wir gleich unterhalt des Geschlecht- Eingabefensters eine Prüfung/Verzweigung ein, die nur durchlaufen wird, wenn das Geschlecht weder männlich noch weiblich ist. In allen anderen Fällen wurde das Geschlecht korrekt eingegeben und der Else-Zweig kommt zum Tragen. Beachten Sie die AND-Verknüpfung des Then-Zweiges. Nur wenn beide Bedingungen erfüllt sind (Geschlecht NICHT m und Geschlecht NICHT w) erscheint Geschlecht-Eingabefehler!. Wird also m oder w eingegeben ist eine der Bedingungen nicht erfüllt und der Dann-Zweig wird ausgeführt. Zuerst einmal übernimmt man die Verzweigungen von Beispiel19a in den Else-Teil. Damit ergibt sich ein verschachteltes Wenn, also ein vollständiges Wenn innerhalb unseres bestehenden Wenns. Einrückungen sind aus Gründen der Übersicht unverzichtbar. Das Hinweisfenster (MsgBox) kann nach dem EndIf belassen werden. Stattdessen könnte man das Hinweisfenster auch direkt in der Geschlecht-Verzweigung ausgeben lassen (siehe Lösungsdatei). Beim folgenden Beispiel wird diese Verlegung des Hinweisfensters unumgänglich.

43 Ausgabe in Zellen Beispiel19c: Angabe: 19c_If_Wiederholung_Angabe.xls Lösung: 19c_If_Wiederholung_Loesung.xls Aufgabenstellung19c Lassen Sie ausgehend von Beispiel19b die Werte in folgende Zelle ausgeben (anstatt Ausgabefenster): Frauen => Alter: B4, MaxPuls: C4 Männer => Alter: B5, MaxPuls: C5. Sub MaximalpulsBerech() Dim Geschlecht As String, Alter As Byte, MaxPuls As Byte Geschlecht = InputBox("Geben Sie das Geschlecht ein (m/w): ") If Geschlecht <> "m" And Geschlecht <> "w" Then MsgBox "Geschlecht-Eingabefehler!" Else Alter = InputBox("Geben Sie das Alter ein: ", "Altersberechnung") If Geschlecht = "w" Then MaxPuls = 225 Alter Cells(4, 2) = Alter Cells(4, 3) = MaxPuls ElseIf Geschlecht = "m" Then MaxPuls = 220 Alter Cells(5, 2) = Alter Cells(5, 3) = MaxPuls EndIf EndIf In obigem Beispiel werden die eingegebenen Werte in bestimmte Zellen geschrieben. Cells(4, 2) steht dabei für die Zelle B4. Der erste Wert in der Klammer steht dabei immer für die Zeile (row), der zweite für die Spalte (column). Zelle(Zeile, Spalte) = Alter bedeutet, dass der Inhalt der Variable Alter in die entsprechende Zelle geschrieben wird.

44 Objekte Application Workbooks Worksheets Cells Charts ect Objekthierarchie - Adressierung Excel besteht aus unterschiedlichen Objekten von der Arbeitsmappe über das Arbeitsblatt bis zur Zelle. In Beispiel19c sprechen wir die Zellen auf direktem und einfachstem Wege an. Werden Makros programmiert, die zwischen verschiedenen Arbeitsmappen und blätter wechseln sollen, benötigte man die vollständige Adressierung der Zelle: Bsp1: Application.Workbooks(1).Worksheets(1).Cells(4, 2) Bsp2: ActiveWorkbooks.Worksheets(1).Cells(4, 2) Bsp3: AcitveWorkbooks.Worksheets( Mai.xls ).Cells(4, 2) Beispiel 1 und 2 sprechen die erste geöffnete Arbeitsmappe, das erste Arbeitsblatt und die Zelle B4 an. Beispiel 3 spricht dieselbe Zelle an, bezieht sich aber auf die Arbeitsmappe (Datei) Mai.xls Objektkatalog Der Objektkatalog bietet Unterstützung bei der Anzeige und Suche von Objekten und deren möglicher Eigenschaften, Methoden und Ereignisse. Er lässt sich über Ansicht Objektkatalog (bzw. das gleichnamige Symbol ) aufrufen. Starten Sie den Objektkatalog und sehen Sie nach welche Eigenschaften/Methoden es zum Objekt Worksheets (Arbeitsblätter) gibt. Welche Möglichkeiten stehen hier zur Verfügung?

45 Das Objekt Worksheets verfügt, wie andere Objekte auch, über bestimmte Elemente, die eingesetzt werden können: - Methoden => grünes Symbol - Eigenschaften => graue Hand Methoden sind immer Vorgänge, wie z.b. öffnen und schließen. Eigenschaften können im Gegensatz dazu abgefragt oder verändert werden. Suchen Sie nun auf der rechten Seite nach dem passenden Element, welche das Zählen der vorhandenen Arbeitsblätter erlaubt.

Neben dem Symbol Entwurfsmodus ist das Symbol Befehlschaltfläche zu sehen.

Neben dem Symbol Entwurfsmodus ist das Symbol Befehlschaltfläche zu sehen. Visual Basic / EXCEL Unterrichtsreihe von Herrn Selbach / Makro Programmierung 1. Die Steuerelemente Toolbox Durch Ansicht Symbolleisten Steuerelemente-Toolbox kann man Befehlschaltflächen (CommandButton),

Mehr

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Grundstrukturen: Sub [name]([übergabe]) End Sub [Übergabe] ist

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

1 MAKROS AUFZEICHNEN. 1.1 Einführung

1 MAKROS AUFZEICHNEN. 1.1 Einführung Makro Aufzeichnen Makro + VBA 2010 effektiv 1 MAKROS AUFZEICHNEN 1.1 Einführung Sie können Excel sehr einfach automatisieren, indem Sie ein Makro aufzeichnen. Ähnlich wie bei einem Kassettenrecorder werden

Mehr

VBA- Programmierung. Integrierte Lösungen mit Office 2013. Ricardo Hernández García. 1. Ausgabe, November 2013

VBA- Programmierung. Integrierte Lösungen mit Office 2013. Ricardo Hernández García. 1. Ausgabe, November 2013 VBA- Programmierung Ricardo Hernández García 1. Ausgabe, November 2013 Integrierte Lösungen mit Office 2013 VBA2013 3 VBA-Programmierung - Integrierte Lösungen mit Office 2013 3 Die VBA-Entwicklungsumgebung

Mehr

Modul 122 VBA Scribt.docx

Modul 122 VBA Scribt.docx Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

Makro + VBA 2007 effektiv

Makro + VBA 2007 effektiv Daten Makro + VBA 2007 effektiv 5 DATEN 5.1 Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten, siehe Seite 84, jederzeit im Programm verändert werden. Als Variablen können

Mehr

Programmieren in Anwendungen

Programmieren in Anwendungen Programmieren in Anwendungen Annette Bieniusa Technische Universität Kaiserslautern bieniusa@cs.uni-kl.de 18.04.2013 1 / 27 Überblick Organisatorisches Einführung in VBA Was ist VBA? Entwicklungsumgebung

Mehr

Einstieg in VBA mit Excel Galileo Press

Einstieg in VBA mit Excel Galileo Press Thomas Theis Einstieg in VBA mit Excel Galileo Press Geleitwort des Fachgutachters 15 loooodoooooooockx)ock90000000aqoc^oc}ooaooooooooocx>c)ooocxx3ao 1 1 Was wird besser durch Makros und VBA? 17 12 Arbeiten

Mehr

P r o g r a m m a b l a u f s t e u e r u n g

P r o g r a m m a b l a u f s t e u e r u n g Jede Programmiersprache braucht Konstrukte zur Steuerung des Programmablaufs. Grundsätzlich unterscheiden wir Verzweigungen und Schleifen. Schleifen dienen dazu, bestimmte Anweisungen wiederholt auszuführen,

Mehr

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54 PHP 5.4 Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012 Grundlagen zur Erstellung dynamischer Webseiten ISBN 978-3-86249-327-2 GPHP54 5 PHP 5.4 - Grundlagen zur Erstellung dynamischer Webseiten

Mehr

VBA-Programmierung WS 2008/09

VBA-Programmierung WS 2008/09 VBA-Programmierung Sibylle Schwarz Westsächsische Hochschule Zwickau Dr. Friedrichs-Ring 2a, RII 263 http://wwwstud.fh-zwickau.de/~sibsc/ sibylle.schwarz@fh-zwickau.de WS 2008/09 Organisation der Lehrveranstaltung

Mehr

1 MAKROS AUFZEICHNEN. 1.1 EinfÄhrung

1 MAKROS AUFZEICHNEN. 1.1 EinfÄhrung Makro Aufzeichnen Makro + VBA effektiv 1 MAKROS AUFZEICHNEN 1.1 EinfÄhrung Sie kçnnen Excel sehr einfach automatisieren, indem Sie ein Makro aufzeichnen. Ühnlich wie bei einem Kassettenrecorder werden

Mehr

Überschrift/Caption. Eigenschaftenfenster

Überschrift/Caption. Eigenschaftenfenster UsserrForrm errssttel llen Dass Codeffensstterr 22000044 NNi iikkoo BBeecckkeerr Öffnen Sie EXCEL und wechseln Sie mit der Tastenkombination Alt + F11 in den Visual Basic-Editor. Alternativ können Sie

Mehr

Makros erstellen und aufrufen Dr. V.Thormählen

Makros erstellen und aufrufen Dr. V.Thormählen Inhalt Mit Makros arbeiten... 2 Makro erstellen... 3 Makro aufrufen... 4 1. Tastenkürzel zuordnen... 4 2. Schnellzugriffsleiste anpassen... 6 3. Menüband anpassen... 8 Fazit... 11 Listings Listing 1: Codezeilen

Mehr

1.4.12 Sin-Funktion vgl. Cos-Funktion

1.4.12 Sin-Funktion vgl. Cos-Funktion .4. Sgn-Funktion Informatik. Semester 36 36.4.2 Sin-Funktion vgl. Cos-Funktion Informatik. Semester 37 37 .4.3 Sqr-Funktion Informatik. Semester 38 38.4.4 Tan-Funktion Informatik. Semester 39 39 .5 Konstanten

Mehr

Informationsverarbeitung im Bauwesen

Informationsverarbeitung im Bauwesen 4 Informationsverarbeitung im Bauwesen Markus Uhlmann basierend auf Folien von A. Brugger 1 Zusammenfassung der 3. Vorlesung Einführung in Excel/VBA Einführung in die Tabellenkalkulation Erste Schritte

Mehr

Algorithmen und ihre Programmierung

Algorithmen und ihre Programmierung Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung Veronika Waue WS 07/08 Einführung Definition: Algorithmus Ein Algorithmus ist eine genau definierte Folge von Anweisungen zur Lösung eines

Mehr

Einführung in VisualBasic for Applications. Stefan Mahlitz

Einführung in VisualBasic for Applications. Stefan Mahlitz Einführung in VisualBasic for Applications Stefan Mahlitz Stefan Mahlitz Einführung in VBA 27.08.00 Inhaltsverzeichnis 1. Grundlagen der VisualBasic for Applications (VBA) Programmierung...2 1.1 Variablen,

Mehr

Alternative Schutzmechanismen für Excel

Alternative Schutzmechanismen für Excel Alternative Schutzmechanismen für Excel Bernd Held, Vaihingen an der Enz Neben dem in Excel standardmäßig angebotene Tabellenschutz können Sie weitere Schutzmechanismen in Excel einsetzen. Dazu bedarf

Mehr

VisualBasic - Variablen

VisualBasic - Variablen Typisch für alle Basic-Dialekte ist die Eigenschaft, dass Variablen eigentlich nicht deklariert werden müssen. Sobald Sie einen Bezeichner schreiben, der bisher nicht bekannt war, wird er automatisch angelegt

Mehr

12. ArcView-Anwendertreffen 2010. Workshop Programmierung in ArcGIS. Daniel Fuchs. Wo kann eigene Programmierung in ArcGIS verwendet werden?

12. ArcView-Anwendertreffen 2010. Workshop Programmierung in ArcGIS. Daniel Fuchs. Wo kann eigene Programmierung in ArcGIS verwendet werden? Wo kann eigene Programmierung in ArcGIS verwendet werden? 12. ArcView-Anwendertreffen 2010 Workshop Programmierung in ArcGIS Daniel Fuchs 1) Makros für die Automatisierung einzelner Arbeitsschritte im

Mehr

Gestalten eigener Menüleisten in MS-Office 97/2000/XP/2003

Gestalten eigener Menüleisten in MS-Office 97/2000/XP/2003 Gestalten eigener Menüleisten in MS-Office 97/2000/XP/2003 In MS-Office können eigene (benutzerdefinierte) Menüsysteme erstellt werden. Weiterhin existiert natürlich auch die Möglichkeit in das existierende

Mehr

Einführung in die Programmierung mit VBA

Einführung in die Programmierung mit VBA Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen

Mehr

Im Original veränderbare Word-Dateien

Im Original veränderbare Word-Dateien Makros Im Original veränderbare Word-Dateien Wer viel mit Tabellenkalkulationen arbeitet, muss viele nacheinander folgende Arbeitsschritte häufig wiederholen. Einige Programme bieten die Möglichkeit, häufig

Mehr

Microsoft Access 2010 Bilder

Microsoft Access 2010 Bilder Microsoft Access 2010 Bilder Hyperlinks... arbeiten ähnlich wie ein Link in einer Webseite. sind ein Verweis auf eine Datei (access2010\material\beispiel\tabledevelop\automat.accdb). können ein Verweis

Mehr

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr

Grundlagen Word Eigene Symbolleisten. Eigene Symbolleisten in Word erstellen

Grundlagen Word Eigene Symbolleisten. Eigene Symbolleisten in Word erstellen Eigene Symbolleisten in Word erstellen Diese Anleitung beschreibt, wie man in Word eigene Symbolleisten erstellt und mit Schaltflächen füllt. Im zweiten Teil wird erklärt, wie man mit dem Makrorekorder

Mehr

Programmieren in Anwendungen

Programmieren in Anwendungen Programmieren in Anwendungen Annette Bieniusa Technische Universität Kaiserslautern bieniusa@cs.uni-kl.de 23.05.2013 1 / 41 Überblick Visual Basic for Applications (VBA) Ausdrücke Kontrollstrukturen Prozeduren

Mehr

Michaela Weiss 30. März 2015. Lerneinheit 3: VBA Teil 1: Eingabe/Ausgabe

Michaela Weiss 30. März 2015. Lerneinheit 3: VBA Teil 1: Eingabe/Ausgabe Michaela Weiss 30. März 2015 Lerneinheit 3: Teil 1: Eingabe/Ausgabe Seite 2 Was ist das? Visual Basic: Programmiersprache von Microsoft Applications: Programme der Office-Familie (z.b. Excel, Word, ) :

Mehr

Programmieren in Anwendungen

Programmieren in Anwendungen Programmieren in Anwendungen Annette Bieniusa Technische Universität Kaiserslautern bieniusa@cs.uni-kl.de 23.04.2015 1 / 29 Überblick Organisatorisches Einführung in VBA Was ist VBA? Entwicklungsumgebung

Mehr

Tabellenkalkulation / Funktionen. VBA Visual Basic for Applications VBA auf einfache Art und Weise nutzen Der Makro-Recorder von EXCEL

Tabellenkalkulation / Funktionen. VBA Visual Basic for Applications VBA auf einfache Art und Weise nutzen Der Makro-Recorder von EXCEL Tabellenkalkulation / Funktionen VBA auf einfache Art und Weise nutzen Der Makro-Recorder von EXCEL Möchte man mal eben einfache Arbeitsschritte automatisieren oder einfach nur Tastatur-eingaben und Mausklicks

Mehr

3 Datentypen, Variablen und Konstanten

3 Datentypen, Variablen und Konstanten 3 Datentypen, Variablen und Konstanten Das folgende Kapitel bildet die Voraussetzung für eine strukturierte Programmierung in Excel. Mit Variablen speichern Sie Informationen dauerhaft während der Laufzeit

Mehr

1 Visual Basic for Application mit Excel (VBA)

1 Visual Basic for Application mit Excel (VBA) Informatikfreikurs WS 2008/2009 1 1 Visual Basic for Application mit Excel (VBA) 1.1 Mosaik Puzzle Das untenstehende Zahlenschema ist ein sogenanntes Mosaik Puzzle. Jede Zahl zeigt an, wie viele der (höchstens

Mehr

1 MAKROS AUFZEICHNEN. 4 MAKRO + VBA EFFEKTIV Edi Bauer

1 MAKROS AUFZEICHNEN. 4 MAKRO + VBA EFFEKTIV Edi Bauer Makro Aufzeichnen 1 MAKROS AUFZEICHNEN 1.1 Einführung Sie können Excel sehr einfach automatisieren, indem Sie ein Makro aufzeichnen. Ähnlich wie bei einem Kassettenrecorder werden dabei alle Befehlen und

Mehr

10 Makros. 10.1 Makros aufzeichnen

10 Makros. 10.1 Makros aufzeichnen 10 Makros Ein Makro besteht aus einer Reihe von Befehlen, die gespeichert und dann immer wieder aufgerufen, d.h. durchgeführt werden können. Das dient zur Automatisierung häufig auftretender Aufgaben.

Mehr

VBA Grundlagen. VBA Grundlagen - Steuerelemente. VBA Grundlagen - Variable. VBA Grundlagen Namensbildung, Kommentar

VBA Grundlagen. VBA Grundlagen - Steuerelemente. VBA Grundlagen - Variable. VBA Grundlagen Namensbildung, Kommentar VBA Grundlagen Basic = Programmiersprache (Beginners All Purpose Symbolic Instruction Code). Wurde 1964 als einfache Programmiersprache entwickelt. Bestandteil vom Anfang des MS-DOS (1981) an als BASICA,

Mehr

Access 2010. für Windows. Ricardo Hernández García 1. Ausgabe, 1. Aktualisierung, Dezember 2011. Automatisierung, Programmierung ACC2010P

Access 2010. für Windows. Ricardo Hernández García 1. Ausgabe, 1. Aktualisierung, Dezember 2011. Automatisierung, Programmierung ACC2010P Ricardo Hernández García 1. Ausgabe, 1. Aktualisierung, Dezember 2011 Access 2010 für Windows Automatisierung, Programmierung ACC2010P 4 Access 2010 für Windows - Automatisierung, Programmierung 4 Mit

Mehr

Text-Zahlen-Formatieren

Text-Zahlen-Formatieren Text-Zahlen-Formatieren Beobachtung: Bei der Formatierung einer Zahl in eine Textzahl und umgekehrt zeigt Excel ein merkwürdiges Verhalten, welches nachfolgend skizziert werden soll: Wir öffnen eine neue

Mehr

3 VBA ALLGEMEIN. 3.1. With Anweisung

3 VBA ALLGEMEIN. 3.1. With Anweisung VBA Allgemein Makro + VBA effektiv 3 VBA ALLGEMEIN In diesem Abschnitt sind allgemeine Funktionen von VBA beschreiben. Wenn Sie bereits grundlegende Kenntnisse von VisualBasic oder VBA aus anderen Office

Mehr

VBA mit Excel Grundlagen und Profiwissen

VBA mit Excel Grundlagen und Profiwissen Rene Martin VBA mit Excel Grundlagen und Profiwissen ISBN-10: 3-446-41506-8 ISBN-13: 978-3-446-41506-5 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-41506-5 sowie

Mehr

Excel Pivot-Tabellen 2010 effektiv

Excel Pivot-Tabellen 2010 effektiv 7.2 Berechnete Felder Falls in der Datenquelle die Zahlen nicht in der Form vorliegen wie Sie diese benötigen, können Sie die gewünschten Ergebnisse mit Formeln berechnen. Dazu erzeugen Sie ein berechnetes

Mehr

www.computeria-olten.ch Monatstreff für Menschen ab 50 Merkblatt 69 EXCEL 2007 03.02.2011 Peter Aeberhard, Computeria Olten

www.computeria-olten.ch Monatstreff für Menschen ab 50 Merkblatt 69 EXCEL 2007 03.02.2011 Peter Aeberhard, Computeria Olten www.computeria-olten.ch Monatstreff für Menschen ab 50 Merkblatt 69 EXCEL 2007 03.02.2011 Peter Aeberhard, Computeria Olten 1 EXCEL Lektion 2 Kurz-Repetition Lektion 1 Kalkulationstabellen( + - / * % )

Mehr

TURNINGPOINT PRÄSENTATION ERSTELLEN

TURNINGPOINT PRÄSENTATION ERSTELLEN TURNINGPOINT PRÄSENTATION ERSTELLEN Wie starte ich? Um eine TurningPoint-Präsentation zu erstellen müssen Sie die TurningPoint mittels des Symbols auf Ihrem Desktop oder über das Startmenü starten. Dadurch

Mehr

Excel 2013 Makro Workshop. Inhalt

Excel 2013 Makro Workshop. Inhalt Inhalt Vorwort... I So benutzen Sie dieses Buch... II Inhalt... V Zahlen- und Monatsschreibweise... 1 Dezimal- und Tausendertrennzeichen... 1 Währungssymbol und -position... 1 Monatsschreibweise... 1 Makros

Mehr

Begleitskript zum VBA Einführungskurs

Begleitskript zum VBA Einführungskurs Begleitskript zum VBA Einführungskurs c 2006 Jochen Grundmann http://www.online-platform.net Dieser Text unterliegt der GNU General Public License. Er darf als Ganzes oder in Auszügen kopiert werden, vorausgesetzt,

Mehr

Excel 2010. Automatisierung, Programmierung. Ricardo Hernández García. 1. Ausgabe, Oktober 2010 EX2010P

Excel 2010. Automatisierung, Programmierung. Ricardo Hernández García. 1. Ausgabe, Oktober 2010 EX2010P Excel 2010 Ricardo Hernández García 1. Ausgabe, Oktober 2010 Automatisierung, Programmierung EX2010P I Excel 2010 - Automatisierung, Programmierung Makros aufzeichnen 1 Excel programmieren...4 1.1 Was

Mehr

Das Ergebnis der beiden Beispielcodes ist dasselbe.

Das Ergebnis der beiden Beispielcodes ist dasselbe. VBA Allgemein Makro + VBA effektiv Übungen: Liter in Kg... 62 Adresse in Rechnung... 79 3 VBA ALLGEMEIN In diesem Abschnitt sind allgemeine Funktionen von VBA beschreiben. Wenn Sie bereits grundlegende

Mehr

Aufzeichnen eines einfachen Makros

Aufzeichnen eines einfachen Makros Makrross,, Prrozzeduren, r, Varriablen,, i l Konsstanten, t t, Dattenffel lderr l etcc.. t 22000022 NNi ikkoo BBeecckkeer r Beim bisherigen Nacharbeiten unserer Übungsaufgaben wurden Sie gelegentlich schon

Mehr

32.4 Anpassen von Menüs und Symbolleisten 795i

32.4 Anpassen von Menüs und Symbolleisten 795i 32.4 Anpassen von Menüs und Symbolleisten 795i Fortsetzung der Seiten in der 8. Auflage 32.4 Anpassen von Menüs und Symbolleisten 32.4.1 Anpassen von Menüs Die Menüs können um folgende Typen von Optionen

Mehr

Weiterverarbeitung Leseranfragen

Weiterverarbeitung Leseranfragen Weiterverarbeitung Leseranfragen Schulungsunterlage Inhaltsverzeichnis Thema Seite 1. Einführung 2 2. Weiterverarbeitung Vorbereitungen 2 3. Weiterverarbeitung Excel-Datei mit dem Seriendokument verbinden

Mehr

Excel 2013. Automatisierung, Programmierung. Ricardo Hernández García. 1. Ausgabe, Juli 2013 EX2013P

Excel 2013. Automatisierung, Programmierung. Ricardo Hernández García. 1. Ausgabe, Juli 2013 EX2013P Excel 2013 Ricardo Hernández García 1. Ausgabe, Juli 2013 Automatisierung, Programmierung EX2013P 2 Excel 2013 - Automatisierung, Programmierung 2 Automatisierung - Makros aufzeichnen, ausführen und speichern

Mehr

Datenverarbeitung Excel-VBA Übersicht HT 2013

Datenverarbeitung Excel-VBA Übersicht HT 2013 Eine gute Starthilfe beim Umgang mit Excel-VBA bieten die Kurzanleitungen von: http://www.bauv.unibw-muenchen.de/bauv1/oc/html/download/dv/index.html Tabellenblätter EXCEL Tabelle wechseln Tabelle umbenennen

Mehr

Access [basics] Programmieren mit Arrays. Beispieldatenbank. Arrays. Eindimensionale Arrays. VBA-Grundlagen Programmieren mit Arrays

Access [basics] Programmieren mit Arrays. Beispieldatenbank. Arrays. Eindimensionale Arrays. VBA-Grundlagen Programmieren mit Arrays Dass Sie unter Access Daten in Tabellen speichern und gezielt darauf zugreifen können, wissen Sie als Access [basics]-leser schon längst. Aber was, wenn Sie nur ein paar gleichartige Daten zwischenspeichern

Mehr

Entwurf von Algorithmen - Kontrollstrukturen

Entwurf von Algorithmen - Kontrollstrukturen Entwurf von Algorithmen - Kontrollstrukturen Eine wichtige Phase in der Entwicklung von Computerprogrammen ist der Entwurf von Algorithmen. Dieser Arbeitsschritt vor dem Schreiben des Programmes in einer

Mehr

Schnellstarthandbuch. Ein Dialogfeld öffnen Klicken Sie auf das Symbol zum Starten eines Dialogfelds, um weitere Optionen für eine Gruppe anzuzeigen.

Schnellstarthandbuch. Ein Dialogfeld öffnen Klicken Sie auf das Symbol zum Starten eines Dialogfelds, um weitere Optionen für eine Gruppe anzuzeigen. Schnellstarthandbuch Microsoft Excel 2013 unterscheidet sich im Aussehen deutlich von älteren Excel-Versionen. Dieses Handbuch soll Ihnen dabei helfen, sich schnell mit der neuen Version vertraut zu machen.

Mehr

Access 2013. Grundlagen für Anwender. Susanne Weber. 1. Ausgabe, 1. Aktualisierung, Juni 2013

Access 2013. Grundlagen für Anwender. Susanne Weber. 1. Ausgabe, 1. Aktualisierung, Juni 2013 Access 2013 Susanne Weber 1. Ausgabe, 1. Aktualisierung, Juni 2013 Grundlagen für Anwender ACC2013 2 Access 2013 - Grundlagen für Anwender 2 Mit Datenbanken arbeiten In diesem Kapitel erfahren Sie was

Mehr

LÖSUNGEN AUFGABEN: EXCEL XP (OHNE DATEIEN)

LÖSUNGEN AUFGABEN: EXCEL XP (OHNE DATEIEN) LÖSUNGEN AUFGABEN: EXCEL XP (OHNE DATEIEN) Übung (1) Elemente des Excelfensters Ordnen Sie die Begriffe richtig zu: [1] Titelleiste (Programmleiste) [9] waagrechte/horizontale Bildlaufleiste [2] Menüleiste

Mehr

Paul-Weber-Schule Homburg

Paul-Weber-Schule Homburg Paul-Weber-Schule Homburg Einführung in die Programmierung mit VBA (unter Excel 97/2000/XP...) Sub Mein_Erstes_Programm() MsgBox Hallo Leute End Sub La 1999 2 Makros mit dem Makrorekorder aufzeichnen und

Mehr

Access 2010 Programmierung Import und Export nach Excel

Access 2010 Programmierung Import und Export nach Excel Access 2010 Programmierung Import und Export nach Excel Excel... ist das Tabellenkalkulationsprogramm von Microsoft Office. wird genutzt, um numerische Daten in Tabellenform zu erfassen. kann Daten automatisch

Mehr

Visual Basic / EXCEL / Makroprogrammierung Unterrichtsreihe von Herrn Selbach

Visual Basic / EXCEL / Makroprogrammierung Unterrichtsreihe von Herrn Selbach Visual Basic / EXCEL / Makroprogrammierung Unterrichtsreihe von Herrn Selbach Übungsaufgaben zum Kapitel 1 1. Aufgabe In einer EXCEL Tabelle stehen folgende Zahlen: Definiere einen CommandButton, der diese

Mehr

xcall White Paper Wählen-Buttons in Excel

xcall White Paper Wählen-Buttons in Excel xcall White Paper Wählen-Buttons in Excel Seite 2 White Paper... 1 Wählen-Buttons in Excel... 1 Wählen-Button in einer Tabelle... 3 Schritt 1: Excel-Datei öffnen... 3 Schritt 2: Button einbauen... 3 Schritt

Mehr

Arbeitsbuch. Makroprogrammierung mit Excel

Arbeitsbuch. Makroprogrammierung mit Excel Arbeitsbuch Die Struktur des Arbeitsbuches ist folgender Tabelle zu entnehmen: Symbol Bezeichnung Funktion Situationsbeschreibung Problematisierung und praxisnahe Hinführung Aufgabe, die am PC ausgeführt

Mehr

Programmieren in Anwendungen

Programmieren in Anwendungen Programmieren in Anwendungen Annette Bieniusa Technische Universität Kaiserslautern bieniusa@cs.uni-kl.de 08.05.2014 1 / 48 Überblick Wiederholung: Visual Basic for Applications (VBA) Datentypen Ausdrücke

Mehr

10 Anwenderfreundlich mit Makros

10 Anwenderfreundlich mit Makros 10 Anwenderfreundlich mit Makros»Ogni bel gioco dura poco. Alles Schöne hat einmal ein Ende.«Dies ist das letzte Kapitel, das sich schwerpunktmäßig mit Makros beschäftigt. Aber keine Angst, VBA ist ja

Mehr

Arbeiten mit Makros und VBA-Prozeduren

Arbeiten mit Makros und VBA-Prozeduren Arbeiten mit Makros und VBA-Prozeduren 2 Zusammenfassung Erste VBA-Schritte und die entsprechenden Kenntnisse werden anhand von einigen Beispielen, wie Pascal sches Dreieck und Kreisberechnung, erklärt.

Mehr

Handbuch ECDL 2003 Modul 4: Tabellenkalkulation Formatierungen von Zahlen- und Datumswerten

Handbuch ECDL 2003 Modul 4: Tabellenkalkulation Formatierungen von Zahlen- und Datumswerten Handbuch ECDL 2003 Modul 4: Tabellenkalkulation Formatierungen von Zahlen- und Datumswerten Dateiname: ecdl4_05_01_documentation.doc Speicherdatum: 26.11.2004 ECDL 2003 Modul 4 Tabellenkalkulation - Formatierungen

Mehr

Programm GArtenlisten. Computerhinweise

Programm GArtenlisten. Computerhinweise Programm GArtenlisten Computerhinweise Liebe/r Vogelbeobachter/in, anbei haben wir Ihnen ein paar wichtige Tipps für ein reibungsloses Funktionieren der mitgelieferten Ergebnisdatei auf Ihrem Computer

Mehr

Theorie Excel - VBA (Visual Basic Application)

Theorie Excel - VBA (Visual Basic Application) Inhaltsverzeichnis 1 Einstieg... 2 1.1 Symbolleiste Visual Basic... 2 1.2 Editor... 3 1.3 Befehle... 4 2 Vorgehensweise beim Programmieren... 4 2.1 Betroffene Dateien festhalten... 4 2.2 Ablauf festhalten...

Mehr

Excel-Tipp 30 - Excel 2007

Excel-Tipp 30 - Excel 2007 Excel-Tipp 30 - Excel 2007 Der neue Startbildschirm: Die Oberfläche von Excel 2007 ist neu und auf den ersten Blick ungewohnt. Nach einer kurzen Einarbeitungszeit finden sich aber die alten Funktionen

Mehr

Access [basics] Aktionsabfragen per VBA ausführen. Beispieldatenbank. Aktionsabfragen. Die Execute-Methode. Datenzugriff per VBA

Access [basics] Aktionsabfragen per VBA ausführen. Beispieldatenbank. Aktionsabfragen. Die Execute-Methode. Datenzugriff per VBA Aktionsabfragen lassen sich bequem mit der Entwurfsansicht für Abfragen zusammenstellen. Sie können damit Daten an Tabellen anfügen, bestehende Daten ändern oder löschen und sogar gleich die passende Tabelle

Mehr

4 Schleifen -= Entstanden unter Excel 2003 =-

4 Schleifen -= Entstanden unter Excel 2003 =- Excel KnowHow / Visual Basic (VBA) 4 Schleifen -= Entstanden unter Excel 2003 =- Die erste Schleife habe ich bereits im letzten Kapitel benutzt: Die FOR-Schleife. Schauen wir uns das Beispiel noch einmal

Mehr

Ein Vortrag von: Matthias Mokosch Sven Hühne Pawel Matuszyk Sandra Mierz

Ein Vortrag von: Matthias Mokosch Sven Hühne Pawel Matuszyk Sandra Mierz Ein Vortrag von: Matthias Mokosch Sven Hühne Pawel Matuszyk Sandra Mierz Gliederung 1. Einleitung und Motivation 2. Entwicklungsumgebung 3. VBA-Programmierung in Excel 4. Kommunikation mit dem Benutzer

Mehr

WORD-EINFÜHRUNG. Inhaltsverzeichnis

WORD-EINFÜHRUNG. Inhaltsverzeichnis WORD-EINFÜHRUNG INHALT Inhaltsverzeichnis 1 Erste Schritte in Word...1 1.1 Word starten... 1 1.2 Der Word-Bildschirm... 2 2 Erste Arbeiten am Text...6 2.1 Text erfassen und speichern... 6 2.1.1 Übung...

Mehr

Installation und Dokumentation. juris Smarttags 1.0

Installation und Dokumentation. juris Smarttags 1.0 Installation und Dokumentation juris Smarttags 1.0 Inhalt Was ist ein juris Smarttag...2 Voraussetzungen...2 Vorbereitung...2 Installation...4 Handhabung...6 Fragen und Lösungen...9 Smarttags und Single

Mehr

Versand von Einladungen zur Teilnahme an der Umfrage mit Seriendruck Funktion von Microsoft Office 2007

Versand von Einladungen zur Teilnahme an der Umfrage mit Seriendruck Funktion von Microsoft Office 2007 Versand von Einladungen zur Teilnahme an der Umfrage mit Seriendruck Funktion von Microsoft Office 2007 [Eine Schritt für Schritt Anleitung] Inhalt 1. Erstellen einer Liste mit Probandendaten... 2 2. Erstellung

Mehr

Excel VBA. Teil 11.8. Zusammenfassung! Was wir können sollten! V0.5 5.4.2013

Excel VBA. Teil 11.8. Zusammenfassung! Was wir können sollten! V0.5 5.4.2013 Excel VBA Teil 11.8 Zusammenfassung! Was wir können sollten! V0.5 5.4.2013 1 von 17 Inhaltsverzeichnis Seite 3... Modul einfügen Seite 4... Prozeduren oder Funktionen Seite 5... Ein/Ausgaben Seite 6...

Mehr

Einstieg in VBA mit Excel Galileo Press

Einstieg in VBA mit Excel Galileo Press Thomas Theis Einstieg in VBA mit Excel Galileo Press Auf einen Blick 1 Einführung 15 2 Grundlagen von Objekten und Ereignissen 45 3 Grundlagen der Programmierung mit VBA 93 4 Fehlerbehandlung 125 5 Mehr

Mehr

Word 2010 Online Formulare mit Vorversionstools

Word 2010 Online Formulare mit Vorversionstools WO.021, Version 1.0 5.10.2015 Kurzanleitung Word 2010 Online Formulare mit Vorversionstools Als Online Formulare werden in Word Vorlagen bezeichnet, welche neben einem gleichbleibenden Standard-Text auch

Mehr

Vorübung 1 Beschriften Sie die Tabelle wie in der Abbildung dargestellt.

Vorübung 1 Beschriften Sie die Tabelle wie in der Abbildung dargestellt. Diese Anleitung führt in einige Grundfunktionen des Tabellenkalkulationsprogramms Microsoft Excel ein. Sie erstellen nach einigen Vorübungen mit Excel ein kleines Programm, das auf der Grundlage der Gesamtpunktzahl

Mehr

Computer selbst programmieren Kleine Programme mit VisualBasic erstellen

Computer selbst programmieren Kleine Programme mit VisualBasic erstellen Computer selbst programmieren Kleine Programme mit VisualBasic erstellen vorgestellt von Dipl.Ing. (FH) Hans-Peter Kiermaier Fakultät Elektrotechnik/Wirtschaftsingenieurwesen Überblick Programmiersprachen:

Mehr

Arbeiten mit dem Blattschutz ab EXCEL XP

Arbeiten mit dem Blattschutz ab EXCEL XP Arbeiten mit dem Blattschutz ab EXCEL XP In vielen Fällen bietet sich an, dass Tabellen- und Diagrammblätter innerhalb einer Arbeitsmappe geschützt Das ist aus mehreren Gründen angebracht. Einmal hat man

Mehr

Tutorium Learning by doing WS 2001/ 02 Technische Universität Berlin. Erstellen der Homepage incl. Verlinken in Word 2000

Tutorium Learning by doing WS 2001/ 02 Technische Universität Berlin. Erstellen der Homepage incl. Verlinken in Word 2000 Erstellen der Homepage incl. Verlinken in Word 2000 1. Ordner für die Homepagematerialien auf dem Desktop anlegen, in dem alle Bilder, Seiten, Materialien abgespeichert werden! Befehl: Desktop Rechte Maustaste

Mehr

Microsoft Excel VBA - Einführung

Microsoft Excel VBA - Einführung Microsoft Excel VBA - Einführung Stand: 2015-12-18 Kontaktdaten Organisatorisches Maik Ramftel 0172 / 81 93 687 ramftel@ramses.de zeiten und Pausen Organisatorisches 08:00 09:30 10:00 11:30 12:30 14:00

Mehr

So funktioniert der Szenario-Manager

So funktioniert der Szenario-Manager So funktioniert der Szenario-Manager Eine wichtige Basis für Entscheidungen ist zu wissen, welche Annahmen zu welchen Ergebnissen führen. Ein spezielles Excel-Werkzeug ist hier eine große Hilfe: der Szenario-Manager.

Mehr

Für wen dieses Buch ist... 10 Der Inhalt im Überblick... 10 Arbeiten mit diesem Buch... 12 Die wichtigsten Neuheiten in Excel 2010...

Für wen dieses Buch ist... 10 Der Inhalt im Überblick... 10 Arbeiten mit diesem Buch... 12 Die wichtigsten Neuheiten in Excel 2010... --- Dieses Buch auf einen Blick 9 Für wen dieses Buch ist.................................................... 10 Der Inhalt im Überblick.................................................... 10 Arbeiten

Mehr

Anleitung zum Erstellen von Moodle-Quizfragen in Word

Anleitung zum Erstellen von Moodle-Quizfragen in Word Anleitung zum Erstellen von Moodle-Quizfragen in Word Die Vorlagedateien Speichern Sie die.zip Datei an den gewünschten Ort und entpacken Sie diese. In dem neuen Ordner befinden sich nun folgende Dateien:

Mehr

MICROSOFT OFFICE. Inhaltsverzeichnis

MICROSOFT OFFICE. Inhaltsverzeichnis MICROSOFT OFFICE TASTENKOMBINATIONEN Dieses Dokument erklärt Ihnen den Umgang mit der Excel-Datei TASTENKOMBINATIONEN.XLS. Mit dieser Datei können Sie alle möglichen Tastenkombinationen in Word, Excel

Mehr

1. Einführung. 2. Vorbereitung. 3. Import von Firmenkunden

1. Einführung. 2. Vorbereitung. 3. Import von Firmenkunden 1. Einführung Über den Kundenimport können Sie Kundendaten aus vielen gängigen Formaten bequem in orgamax importieren, ohne diese einzeln eingeben zu müssen. In dieser Dokumentation sind verschiedene Szenarien,

Mehr

Microsoft Excel 2013 Automatisches Ausfüllen

Microsoft Excel 2013 Automatisches Ausfüllen Hochschulrechenzentrum Justus-Liebig-Universität Gießen Microsoft Excel 2013 Automatisches Ausfüllen Automatisches Ausfüllen in Excel 2013 Seite 1 von 10 Inhaltsverzeichnis Lineare Reihen erstellen...

Mehr

Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern

Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern Handbuch ECDL 2003 Professional Modul 2: Tabellenkalkulation Vorlagen benutzen und ändern Dateiname: ecdl_p2_02_03_documentation.doc Speicherdatum: 08.12.2004 ECDL 2003 Professional Modul 2 Tabellenkalkulation

Mehr

Richtig Einsteigen: Excel 2007 mit VBA programmieren lernen Weber

Richtig Einsteigen: Excel 2007 mit VBA programmieren lernen Weber Richtig Einsteigen: Excel 2007 mit VBA programmieren lernen Von aufgezeichneten Makros bis zu professionellen VBA-Code von Monika Weber 1. Auflage Richtig Einsteigen: Excel 2007 mit VBA programmieren lernen

Mehr

Zusammenfassung Was haben wir bisher gelernt?

Zusammenfassung Was haben wir bisher gelernt? 1. Kennenlernen der MsgBox Beispiel: Private Sub Workbook_Open() MsgBox "Hallo User" 2. Kennenlernen der Inputbox Private Sub Worksheet_Activate() Worksheets( Tabelle1 ).Range( A3 ) = InputBox("Bitte geben

Mehr

3. GLIEDERUNG. Aufgabe:

3. GLIEDERUNG. Aufgabe: 3. GLIEDERUNG Aufgabe: In der Praxis ist es für einen Ausdruck, der nicht alle Detaildaten enthält, häufig notwendig, Zeilen oder Spalten einer Tabelle auszublenden. Auch eine übersichtlichere Darstellung

Mehr

Erweiterung der CRM-Datenbank für den Umgang mit Excel-Mappen. Automatisches Ausfüllen von MS-Excel-Vorlagen mit Daten aus organice

Erweiterung der CRM-Datenbank für den Umgang mit Excel-Mappen. Automatisches Ausfüllen von MS-Excel-Vorlagen mit Daten aus organice organice-excel-add-in 1 Erweiterung der CRM-Datenbank für den Umgang mit Excel-Mappen. Automatisches Ausfüllen von MS-Excel-Vorlagen mit Daten aus organice (Ein stichwortartiger Entwurf ) Systemvoraussetzungen:

Mehr

Access Verbrecherdatenbank Teil 1

Access Verbrecherdatenbank Teil 1 Access Verbrecherdatenbank Teil 1 Allgemeines In dieser Übung erstellst du mit Microsoft Access eine Verbrecherdatenbank. Dabei lernst du die wesentlichen Elemente einer Datenbank wie Tabellen, Formulare

Mehr

Kontakte nach Nachnamen sortieren lassen

Kontakte nach Nachnamen sortieren lassen Kontakte nach Nachnamen sortieren lassen Wer hat sich nicht schon darüber geärgert, dass standardmässig die Kontakte im Adressbuch nach den Vornamen sortiert und nicht nach Nachnamen. Durch eine einfache

Mehr

Windows 7. Der Desktop und seine Elemente. Der Desktop

Windows 7. Der Desktop und seine Elemente. Der Desktop Windows 7 Der Desktop und seine Elemente Der Desktop Nach der erfolgten Anmeldung an den Computer wird der DESKTOP angezeigt Der Desktop ist mit einem Schreibtisch zu vergleichen auf welchem Dokumente

Mehr

Einführung in Automation Studio

Einführung in Automation Studio Einführung in Automation Studio Übungsziel: Der links abgebildete Stromlaufplan soll mit einer SPS realisiert werden und mit Automation Studio programmiert werden. Es soll ein Softwareobjekt Logik_1 in

Mehr