Programmieren in Anwendungen



Ähnliche Dokumente
Programmieren in Anwendungen

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

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

VBA-Programmierung WS 2008/09

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

Programmieren in Anwendungen

Excel Funktionen durch eigene Funktionen erweitern.

Microsoft Access 2010 Bilder

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

VBA-Programmierung: Zusammenfassung

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

Programmierung von MS-Office mit Visual Basic

esms - sms senden & empfangen mit Outlook

Erstellen eines Formulars

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

Innerhalb der Entwicklungsebene werden Makros in einem sog. zu einer Arbeitsmappe gehörenden Modul gespeichert.

Mediator 9 - Lernprogramm

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

Standard-Kontaktformular

Modul 122 VBA Scribt.docx

ARAkoll 2013 Dokumentation. Datum:

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

Interoperabilität mit Office-Anwendungen (1)

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

Historical Viewer. zu ETC5000 Benutzerhandbuch 312/15

Text-Zahlen-Formatieren

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

E-PRIME TUTORIUM Die Programmiersprache BASIC

BricsCAD System Variablen

Bedienungsanleitung Anlassteilnehmer (Vereinslisten)

Klausurteilnehmer. Wichtige Hinweise. Note: Klausur Informatik Programmierung, Seite 1 von 8 HS OWL, FB 7, Malte Wattenberg.

Sophia Business Leitfaden zur Administration

Anwendungsentwicklung mit organice 3

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Ihr CMS für die eigene Facebook Page - 1

Das Modul Hilfsmittel ermöglicht den Anwender die Verwaltung der internen Nachrichten, Notizen, Kontakte, Aufgaben und Termine.

Programmieren Tutorium

Einfache und effiziente Zusammenarbeit in der Cloud. EASY-PM Office Add-Ins Handbuch

Seriendruck mit der Codex-Software

Erstellen eines Screenshot

Multimedia im Netz Wintersemester 2011/12

Grundlagen Word Eigene Symbolleisten. Eigene Symbolleisten in Word erstellen

Java Kurs für Anfänger Einheit 5 Methoden

Serienbrieferstellung in Word mit Kunden-Datenimport aus Excel

Excel Schulungen. Ingo Schmidt Karlsberger Str Durach / service@erstehilfepc.de

Bedienungsanleitung. Stand: Copyright 2011 by GEVITAS GmbH

Inhalt. meliarts. 1. Allgemeine Informationen Administration Aufruf Das Kontextmenü Vorlagen...

IT-Basics 2. DI Gerhard Fließ

CVR Seniorentreff vom 04. und Serienbriefe/Seriendruck. Serienbriefe / Seriendruck

Schritt 1: Verwenden von Excel zum Erstellen von Verbindungen mit SQL Server-Daten

OUTLOOK-DATEN SICHERN

Präsentation: Google-Kalender. Walli Ruedi Knupp Urdorf

2 Einführung in die VBA-Programmierung mit Access 2007

Umstellung PC-VAB auf S PA-Zahlungsverkehr

Wofür braucht man eine Tabellenkalkulation? Das Programm Microsoft Excel gehört in Softwarekategorie der Tabellenkalkulationen.

Office Objektmodell (1)

Modul 7: Übungen zu - Tabellen als Mail oder im Web veröffentlichen

Übungen Programmieren 1 Felix Rohrer. Übungen

Handbuch ECDL 2003 Basic Modul 3: Textverarbeitung Serienbrief erstellen - Datenquelle

virtuos Leitfaden für die virtuelle Lehre

BEDIENUNGSANLEITUNG FÜR LIEFERANTEN AUSSCHREIBUNG

6.3 Serienbriefe über Microsoft Excel und Word

ECDL Europäischer Computer Führerschein. Jan Götzelmann. 1. Ausgabe, Juni 2014 ISBN

Lavid-F.I.S. Ablaufbeschreibung für. Arbeitszeiterfassung. Lavid-F.I.S.

Benutzerkonto unter Windows 2000

Datenexport aus JS - Software

1 Einleitung. Lernziele. Diagramme zur Visualisierung von Daten erstellen. Diagramme formatieren Lerndauer. 4 Minuten.

Gesicherte Prozeduren

Frankieren in Microsoft Word mit dem E Porto Add in der Deutschen Post

Microsoft Office 365 Kalenderfreigabe

GEORG.NET Anbindung an Ihr ACTIVE-DIRECTORY

teischl.com Software Design & Services e.u. office@teischl.com

IT-Tutorial. Access Microsoft. Infos zur Migration von Access I MPRESSUM

DOKUMENTATION. Outlook Vorlagen. in Microsoft Office Outlook 2007 einrichten.

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Task: Nmap Skripte ausführen

Arbeitsschritte EAÜ Leistungserbringer Einnahmen erfassen

Visual Basic Express Debugging

Einkaufslisten verwalten. Tipps & Tricks

Ein PDF erstellen. aus Adobe InDesign CC. Langner Marketing Unternehmensplanung Metzgerstraße Reutlingen

Vodafone Conferencing Meeting erstellen

Excel + VBA. Ergänzungen. Kapitel 1 Einführung in VBA Einfache Dialoge in VBA HARALD NAHRSTEDT. Erstellt am Bearbeitet am

VisualBasic - Variablen

Kurzeinführung Excel2App. Version 1.0.0

Arbeiten mit dem Outlook Add-In

Herzlich willkommen zum Kurs "MS Word 2003 Professional"

Vergleich: Positionen der Word 2003-Befehle in Word

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

snap Adressen selektieren und Etiketten oder Serienbriefe in Word erstellen

Handbuch ECDL 2003 Basic Modul 6: Präsentation Diagramm auf einer Folie erstellen

Um zusammenfassende Berichte zu erstellen, gehen Sie folgendermaßen vor:

Office im Überblick

Kurzbeschreibung S&S Arbeitszeiterfassung

Seriendruck mit der Codex-Software

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

ERSTE SCHRITTE.

Microsoft Excel Schulungen

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

BAUINFORMATIK. SS 2013 Vorlesung 1 Johannes Lange

Transkript:

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 Arbeiten mit Makros 2 / 27

Vorlesung Homepage mit Informationen und Material http://softech.informatik.uni-kl.de/homepage/pia SS13 Ort und Zeit: donnerstags, 17:15-19:00, in Raum 52-207 Saalübung: freitags, Fr 13:45h - 15:15h, in Raum 48-379 3 / 27

Vorlesung Homepage mit Informationen und Material http://softech.informatik.uni-kl.de/homepage/pia SS13 Ort und Zeit: donnerstags, 17:15-19:00, in Raum 52-207 Saalübung: freitags, Fr 13:45h - 15:15h, in Raum 48-379 Klausur oder Projektausarbeitung? 4 / 27

Übungen Korrektur: Jan Stärz (j staerz11@cs.uni-kl.de) Abgabe der Übungblätter: montags bis 12:00 Abgabe in Teams von 1-3 Personen möglich 50% der Punkte müssen jeweils auf Blatt 1-5 und Blatt 6-10 erreicht werden 5 / 27

Themen Visual Basic for Applications(VBA) Wiederholung grundlegender Konzepte der imperativen Programmierung anhand der neuen Sprache VB (Visual Basic) Einführung in die ereignisorientierte Programmierung Anwendungsbeispiele mit VBA in Word und Excel Statistik und Grafiken mit R Einführung in die Statistiksoftware R Wiederholung grundlegender Konzepte der Statistik und Datenanalyse Datenvisualisierung und Datenanalyse in R an ausgewählten Fallstudien 6 / 27

Visual Basic for Applications (VBA) Skriptsprache zur Automatisierung und Anpassung von Microsoft Office Programmen Basiert auf der Syntax von Visual Basic (nicht mehr kompatibel seit VB.NET) Modul-orientiert und prozedural Literaturhinweis VBA-Programmierung - Integrierte Lösungen mit Office 2010, 1. Auflage, Okt 2010 (erhältlich im Rechenzentrum bzw. HERDT-Verlag) 7 / 27

Typische Einsatzgebiete Automatisiertes Erzeugen von Dokumenten wie Serienbriefen Benutzerdefinierte Dialogfenster oder Fehlermeldungen Dokumentstatistiken erstellen Daten aus anderen Anwendungen einbinden (insbesondere Access-Datenbanken) Einbinden von Funktionalität spezifischer Office-Anwendungen (integrierte Lösungen) Umsatz- und Budgetzahlen aus einer Access-Datenbank werden in Excel ausgewertet und visualisiert. Umfangreiche Excel-Tabellen können über Word kompakt gedruckt werden. 8 / 27

Microsoft Office-Anwendungen Word Textverarbeitung, Seriendruck Excel Tabellenkalkulation, Formeln, Diagramme Access Relationale Datenbanken, Formulare PowerPoint Folienpräsentation, Begleitmaterial Outlook E-Mail, Terminplanung, Adressbücher 9 / 27

Die VBA-Entwicklungsumgebung 10 / 27

Elemente der VBA-Entwicklungsumgebung Editor, Werkzeuge, Projektverwaltung Projekt-Explorer gibt eine hierarchisch geordnete Übersicht von allen Elemente eines Projekts. Eigenschaftenfenster listet die Eigenschaften und aktuellen Eigenschaftswerte des markierten Elements. Code-Fenster/Modulfenster dient zum Eingeben und Bearbeiten des Programmcodes. Direktfenster erlaubt es einzelne Anweisungen direkt auszuführen. Lokal-Fenster zeigt die Werte aller lokaler Variablen im Debug-Modus an. 11 / 27

Module VBA-Programme bestehen aus einer Kombination von Modulen. Jedes Modul enthält Deklarationen von Konstanten, Variablen und Prozeduren. Standardmodule sind für ein gesamtes Projekt gültig. Klassenmodule definieren ein neues Objekt mit zugehörigen Eigenschaften und Methoden. Dokumentenmodule sind an ein konkretes Dokument gebunden. UserForm-Dialoge gehören zu einem benutzerdefinierten Formular und beinhalten die zugehörigen Ereignisprozeduren. 12 / 27

Organisation von Modulen Module können an ganze Dateien oder an einzelne Dateielemente gebunden werden. Gruppieren Sie Prozeduren, die zusammen gehören, in jeweils eigene Module. Benennen Sie Module mit aussagekräftigen Namen (z.b. Verwaltung oder Dokumentstatistik) statt der automatisch erzeugten Namen Modul1, Modul2, etc. Module können exportiert und importiert werden. Beim Exportieren werden sie in Textdateien mit der Dateiendung *.bas gespeichert. 13 / 27

Sub-Prozeduren Sub-Prozeduren bestehen aus einer Folge von Anweisungen (z.b. Zuweisungen von Variablen, Prozeduraufrufen, Verzweigungen, Schleifen,...) Syntax von einfachen Sub-Prozeduren Sub Prozedurname ()... End Sub Syntax von Prozeduraufrufen (ohne Parameter) Prozedurname Call Prozedurname 14 / 27

Prozedurnamen und andere Bezeichner Bezeichner sind frei wählbare Namen, mit denen Prozeduren, Variablen und Konstanten benannt werden. Sie dürfen nicht mit Schlüsselwörtern übereinstimmen. Sie müssen mit einem Buchstaben beginnen und können bis zu 255 Buchstaben, Zahlen oder Unterstriche enthalten, jedoch keine Punkte oder Leerzeichen. VBA ist nicht case sensitive, d.h. Groß- und Kleinschreibung werden nicht unterschieden. Bezeichner sollten eindeutig und aussagekräftig sein! 15 / 27

Beispiel: Meldungsfenster mit allgemeiner Information Information zu Datum und Anwendung Sub AllgemeineInfo () MsgBox " Heute ist " & Date & " und Sie arbeiten mit " & Application. Name End Sub Kommentare beginnen mit. Mit & werden Zeichenketten (Strings) zusammengefügt (Konkatenation). Date liefert das Datum des heutigen Tages. Auf Eigenschaften von Objekten (wie z.b. Application) wird mit. zugegriffen. 16 / 27

Meldungsfenster Meldungsfenster können dazu genutzt werden, dem Benutzer Informationen mitzuteilen und auch abzufragen. Sie bestehen aus dem Meldungstext und standardmäßig der Schaltfläche OK. Sie kann optional mit einem Titel, Informationssymbolen und weiteren Schaltflächen ergänzt werden. Einfaches Meldungsfenster MsgBox " Meldungstext " Meldungsfenster mit Titel und Informationssymbol MsgBox " Meldungstext ", vbinformation, " Titel " Andere Symbole: vbcritical, vbquestion, vbexclamation 17 / 27

Meldungsfenster mit Rückgabewert Über Schaltflächen (Buttons) kann der Benutzer die Anwendung interaktiv steuern. Ergebniswert = MsgBox (" Text ", Buttons + Symbole, " Titel ") Mit Rückgabewert werden die Parameter in Klammern angegeben! Um Schaltflächen mit Symbolen zu kombinieren, werden diese mit + addiert. 18 / 27

Übersicht: Schaltflächen Konstante Wert Schaltfläche vbokonly 0 OK vbokcancel 1 OK und Abbrechen vbabortretryignore 2 Abbrechen, Wiederholen und Ignorieren vbyesnocancel 3 Ja, Nein und Abbrechen vbyesno 4 Ja und Nein vbretrycancel 5 Wiederholen und Abbrechen Die Verwendung der Konstanten ist aussagekräftiger als die der Werte: MsgBox " Das ist ein Test ", 0, " Das ist der Titel " MsgBox " Das ist ein Test ", vbokonly, " Das ist der Titel " 19 / 27

Übersicht: Rückgabewerte von Schaltflächen Konstante Wert gewählte Schaltfläche vbok 1 OK vbcancel 2 Abbrechen vbabort 3 Abbrechen vbretry 4 Wiederholen vbignore 5 Ignorieren vbyes 6 Ja vbno 7 Nein 20 / 27

Beispiel: Verwendung von Schaltflächen Abfrage von Essensgewohnheiten Sub Essensgewohnheiten () Wahl = MsgBox (" Waren Sie heute in der Mensa essen?", vbyesno + vbquestion, " Essensgewohnheiten ") If Wahl = vbyes Then MsgBox " Ein Mensabesucher!" Else Wahl = vbno MsgBox " Ein Hobbykoch!" End If End Sub 21 / 27

Verzweigungen Bei Verzweigungen werden Programmteile abhängig von einer Bedingung ausgewertet. Einseitige Auswahl If Ausdruck Then... End If If Temperatur >= -3 Then MsgBox " Gefrierschrank defekt " End If Zweiseitige Auswahl If Ausdruck Then... Else... End If If Alter >= 18 Then MsgBox " Normaltarif " Else MsgBox " Jugendtarif " End If 22 / 27

Variablen Mit Hilfe von Variablen kann man (temporär) Werte speichern und diese in den Prozeduren verwenden. Der Wert einer Variablen kann durch eine Zuweisung verändert werden. Variablen werden über Bezeichner (Variablennamen) referenziert. Die Deklaration einer Variablen ist das Vereinbaren einer Variablen vor ihrem ersten Gebrauch. Dim Variablenname As Datentype Beispiele: Dim Anzahl As Integer Dim AusgabeText As String Dim Alter As Integer, Temperatur As Integer Dim Gestern As Date 23 / 27

Deklaration und Sichtbarkeit von Variablen Variablen, die im Deklarationsteil zu Beginn eines deklariert werden, sind im gesamten Modul gültig. Variablen, die am Anfang einer Prozedur deklariert werden, sind nur innerhalb der Prozedur gültig. VBA erlaubt die implizite und explizite Deklaration von Variablen. Implizite Deklaration Variablen müssen vor ihrer ersten Verwendung nicht deklariert werden. Explizite Deklaration Variablen müssen vor ihrer ersten Verwendung deklariert werden. Angabe von Option Explicit zu Beginn des Moduls erforderlich. 24 / 27

Beispiel: Verwendung von Variablen Dauer des Semesters Sub AnzahlTage () Dim Heute As Date, Semesterende As Date, Ausgabe As String Heute = Date Semesterende = DateValue (" 20.07.2013 ") Ausgabe = " Bis zum Semesterende sind es noch " & DateDiff ("d", Heute, Semesterende ) & " Tage." MsgBox Ausgabe End Sub Date ist der Datentyp für ein Datum DateValue berechnet für eine Datum im String-Format den Wert im Datumsformat DateDiff liefert die Differenz in Tagen ("d") für zwei Datumswerte. 25 / 27

Zusammenfassung Allgemeine Informationen zu VBA und Microsoft Office VBA-Entwicklungsumgebung Interaktion mit dem Benutzer über Meldungsfenster Programmieren in VBA Module Prozeduren Anweisungen (einfache Prozeduraufrufe, Kontrollstrukturen: Verzweigungen, Zuweisungen) Variablen 26 / 27

Ausblick In der nächsten Vorlesung: Funktionen Datentypen Ausdrücke (Konstanten, Operatoren) Kontrollstrukturen: Fallauswahl und Schleifen 27 / 27