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:

VBA-Programmierung: Zusammenfassung

Excel Funktionen durch eigene Funktionen erweitern.

Programmieren in Anwendungen

Microsoft Access 2010 Bilder

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

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

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

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

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

Programmierung von MS-Office mit Visual Basic

esms - sms senden & empfangen mit Outlook

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

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

E-PRIME TUTORIUM Die Programmiersprache BASIC

Erstellen eines Formulars

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

Mediator 9 - Lernprogramm

Standard-Kontaktformular

Modul 122 VBA Scribt.docx

Bedienungsanleitung Anlassteilnehmer (Vereinslisten)

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

Ihr CMS für die eigene Facebook Page - 1

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

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

ARAkoll 2013 Dokumentation. Datum:

Historical Viewer. zu ETC5000 Benutzerhandbuch 312/15

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

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

Übungen Programmieren 1 Felix Rohrer. Übungen

Arbeitsschritte EAÜ Leistungserbringer Einnahmen erfassen

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

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

Text-Zahlen-Formatieren

Datenexport aus JS - Software

Bedienungsanleitung. Stand: Copyright 2011 by GEVITAS GmbH

Sophia Business Leitfaden zur Administration

P&P Software - Adressexport an Outlook 05/29/16 14:44:26

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen

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

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

Grundlagen Word Eigene Symbolleisten. Eigene Symbolleisten in Word erstellen

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

Java Kurs für Anfänger Einheit 5 Methoden

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

1 Einleitung. Lernziele. Symbolleiste für den Schnellzugriff anpassen. Notizenseiten drucken. eine Präsentation abwärtskompatibel speichern

IT-Basics 2. DI Gerhard Fließ

OUTLOOK-DATEN SICHERN

Interoperabilität mit Office-Anwendungen (1)

Seriendruck mit der Codex-Software

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Programmieren Tutorium

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

Umstellung PC-VAB auf S PA-Zahlungsverkehr

Berechtigungen im Kalender Anleitung für die Rechtevergabe im Outlook Kalender FHNW, Services, ICT

VisualBasic - Variablen

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

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

ERSTE SCHRITTE.

BricsCAD System Variablen

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

Durchführung der Datenübernahme nach Reisekosten 2011

Office Live und Co-Authoring. 1 Einleitung. Lernziele. Office-Dokumente online im Team bearbeiten Lerndauer. 4 Minuten.

virtuos Leitfaden für die virtuelle Lehre

E-TIME ADVANCED Dokumentation zum Vorgehen bei der elektronischen Zeiterfassung. Geben Sie folgende Internetadresse ein:

Kurzbeschreibung S&S Arbeitszeiterfassung

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

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

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

TopKontor - Kurzleitfaden

Anwendungsentwicklung mit organice 3

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

Arbeiten mit dem Outlook Add-In

Task: Nmap Skripte ausführen

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

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

Eine Anleitung, wie Sie Mozilla Thunderbird 2 installieren und konfigurieren können. Installation Erstkonfiguration... 4

Windows 10. Vortrag am Fleckenherbst Bürgertreff Neuhausen.

e-banking-business Edition Bestehende Lastschriftvorlagen in SEPA-Lastschriftvorlagen umwandeln

Access und die andern (Office) Programme. Armin Hess

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof

Sun Convergence. Um sich anzumelden gehen Sie auf und dann rechts oben auf IMAP Der Anmeldebildschirm sieht wie folgt aus:

Serienbrieferstellung in Word mit Kunden-Datenimport aus Excel

Erstellen eines Screenshot

So gehts Schritt-für-Schritt-Anleitung

Kurzeinführung Excel2App. Version 1.0.0

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

Schnellanleitung: Verbuchung von Studien- und Prüfungsleistungen

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Benutzerkonto unter Windows 2000

PowerPoint 2010 Mit Folienmastern arbeiten

Seriendruck mit der Codex-Software

Vodafone Conferencing Meeting erstellen

BEDIENUNGSANLEITUNG FÜR LIEFERANTEN AUSSCHREIBUNG

Handbuch - HotSpot-Sheriff Verwaltung

Transkript:

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

Administratives Homepage mit Informationen und Material http://softech.informatik.uni-kl.de/homepage/pia SS15 Vorlesung: donnerstags, 17:15-19:00, in Raum 48-379 Übungen: freitags, 13:45-15:15 Raum 32-411 Bitte im KIS anmelden, um aktuelle Informationen per Email zu erhalten! 3 / 29

Prüfungsmodalitäten Übungen werden nicht korrigiert, aber gemeinsam besprochen Mündliche Prüfung Zulassungsvoraussetzung: Projektausarbeitung am Semesterende (Bearbeitungszeit: 3 Wochen) 4 / 29

Themen Visual Basic for Applications(VBA) Wiederholung grundlegender Konzepte der imperativen Programmierung anhand der Programmiersprache VB (Visual Basic) Einführung in die ereignisorientierte Programmierung Anwendungsbeispiele in Word, Excel, Powerpoint und Outlook Statistik und Grafiken mit R Einführung in die Statistiksoftware R Wiederholung grundlegender Konzepte der Statistik und Datenanalyse Datenvisualisierung und Datenanalyse anhand von Fallstudien 5 / 29

Vorwissen Vorwissen: Welche Veranstaltungen haben Sie bisher besucht? Informatik-Vorlesungen Programmierkurse Einführung in Statistik oder Wahrscheinlichkeitsrechnung 6 / 29

Warum sind Sie hier? Was erwarten Sie von der Veranstaltung? Welche Themen wollen Sie gerne vertiefend behandeln? 7 / 29

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) Proprietärer Microsoft-Standard Modul-orientiert und prozedural Literaturhinweis VBA-Programmierung - Integrierte Lösungen mit Office 2013, 1. Auflage, Okt 2013 (erhältlich im HERDT-Verlag) 8 / 29

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 / 29

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. 10 / 29

Die VBA-Entwicklungsumgebung 11 / 29

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. 12 / 29

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. 13 / 29

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. 14 / 29

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 15 / 29

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! 16 / 29

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. 17 / 29

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 18 / 29

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. 19 / 29

Ü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 " 20 / 29

Ü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 21 / 29

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 22 / 29

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 23 / 29

Verzweigungen Mehrstufige Auswahl If Ausdruck1 Then... ElseIf Ausdruck2 Then... ElseIf Ausdruck3 Then... Else... End If If Temperatur < 0 Then MsgBox " Frost!" ElseIf Temperatur < 20 Then MsgBox " Durchschnittstemperatur " ElseIf Temperatur < 30 Then MsgBox " Sommerfeeling " Else MsgBox " Hitzewelle!" End If 24 / 29

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 25 / 29

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. 26 / 29

Beispiel: Verwendung von Variablen Dauer des Semesters Sub AnzahlTage () Dim Heute As Date, Semesterende As Date, Ausgabe As String Heute = Date Semesterende = DateValue (" 25.07.2014 ") Ausgabe = " Bis zum Ende der Vorlesungszeit 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. 27 / 29

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 28 / 29

Ausblick In der nächsten Vorlesung: Programmierbasics: Funktionen Datentypen Ausdrücke (Konstanten, Operatoren) Kontrollstrukturen: Fallauswahl und Schleifen Objekte in Word und Excel 29 / 29