Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

VBA für Excel 22.02.2010 Andreas RozekHyMeSys Software & Consulting VBA für Excel eine Einführung in das Programmieren mit Visual Basic for Applications.

Ähnliche Präsentationen


Präsentation zum Thema: "VBA für Excel 22.02.2010 Andreas RozekHyMeSys Software & Consulting VBA für Excel eine Einführung in das Programmieren mit Visual Basic for Applications."—  Präsentation transkript:

1 VBA für Excel Andreas RozekHyMeSys Software & Consulting VBA für Excel eine Einführung in das Programmieren mit Visual Basic for Applications speziell (aber nicht nur) für Excel unter Windows Andreas Rozek HyMeSys Software & Consulting Brunnenstraße 30/ Böblingen Telefon:(07031) URL:www.Rozek.de

2 VBA für Excel Andreas RozekHyMeSys Software & Consulting Organisatorisches Theorie: von 9 00 Uhr bis Uhr Praxis: von Uhr bis Uhr Anwesenheitsliste Teilnahmebestätigung begleitende Literatur Christian Friedrich Einstieg in VBA mit Excel Galileo Computing ISBN ca

3 VBA für Excel Andreas RozekHyMeSys Software & Consulting Zum Einstieg...

4 VBA für Excel Andreas RozekHyMeSys Software & Consulting Zum Einstieg...

5 VBA für Excel Andreas RozekHyMeSys Software & Consulting Überblick über den Kurs MontagGrundlagen (Syntax & Semantik von VBA) Freitagweiterführende Themen ( , Web, usw.) Verwendung externer Objekte, Sudoku DonnerstagEingabeformulare, Programmentwicklung (Anmeldeformular, Zahlen-Memory) MittwochEreignis-gesteuerte Programmierung Formular- und ActiveX-Steuerelemente DienstagDas Excel-Objektmodell

6 VBA für Excel Andreas RozekHyMeSys Software & Consulting Lernziele Idealerweise sollten Sie am Ende dieses (Crash-)Kurses wissen, daß man die Funktionalität von Excel mit VBA erheblich erweitern kann; einen ungefähren Eindruck von den Möglichkeiten und Grenzen von VBA haben; in der Lage sein, eigene VBA-Makros zu schreiben und auszuführen; eigene Benutzeroberflächen (UserForms) erstellen und programmieren können.

7 VBA für Excel Andreas RozekHyMeSys Software & Consulting Kursmaterialien Microsoft Excel: 60-Tage Testversion Excel VBA Language Reference Windows Script 5.6 Documentation D-4BE1-8A76-1C4099D7BBB9&displaylang=en OpenOffice.org Version 3.x

8 VBA für Excel Andreas RozekHyMeSys Software & Consulting VBA für Excel Teil I: Grundlagen

9 VBA für Excel Andreas RozekHyMeSys Software & Consulting Ein paar Worte zu Excel Tabellen-artige Darstellung von Zahlen und Texten(!) Verarbeitung der Tabelleninhalte mithilfe von Formeln Visualisierung der Tabelleninhalte mithilfe von Diagrammen Grenzen komplexe Berechnungen, Textverarbeitung Zugriff auf Dateien, Datenbanken, das WWW (Data Mining) Steuerung des Benutzers durch Benutzeroberflächen

10 VBA für Excel Andreas RozekHyMeSys Software & Consulting Grenzen sprengen durch Makro-Programmierung Macros Interpreter Application System Macros Interpreter Application System DLLs, ActiveX vorhandene Funktionalität durch (meist einfache) Makros erweitern (sofern die Anwendung dies zuläßt) durch Integration externer Komponenten (z.B. DLLs oder ActiveX Controls) zusätzliche Funktionalitäten möglich das Gros der Funktionalitäten kommt weiterhin von der ursprgl. Application (Wirtsprogramm)

11 VBA für Excel Andreas RozekHyMeSys Software & Consulting Was ist VisualBasic for Applications (VBA)? VisualBasic für Anwendungen, Steuerelemente, Bibliotheken Übersetzung in Maschinensprache (bis Version 6) VBScript interpretierte Scriptsprache, z.B. für WSH, HTTP-Server,... keine echten Datentypen, ActiveX-Steuerung VisualBasic for Applications interpretierte Automatisierungssprache in Wirtsprogramm Zugriff auf Objektmodell des Wirtsprogrammes VisualBasic Classic > VBA > VBScript

12 VBA für Excel Andreas RozekHyMeSys Software & Consulting Wo und wie wird VBA (in Excel) eingesetzt? exploratives Prototyping (Anforderungen erkennen) experimentelles Prototyping (Lösungsmöglichkeiten suchen) Einmal-Programme (Konvertierung von Datenbeständen, Analysen, Studien) kleinere (häufig Firmen-interne) Projekte kleinere Anwendungen Treibender Faktor ist stets: Zeitersparnis (es ist fast schon alles vorhanden)

13 VBA für Excel Andreas RozekHyMeSys Software & Consulting Einmal lernen – mehrmals nutzen (Visual)Basic-Syntax ist stets gleich die Objekt-Modelle ähneln sich, die Konzepte ohnehin Ereignis-orientierte Programmierung ist omnipräsent VBA ist direkt einsetzbar in Microsoft's Office-Anwendungen unter Windows z.T. Microsoft's Office-Anwendungen unter MacOS X manchen Anwendungen von Drittanbietern OpenOffice 3.0 (evtl. auch unter MacOS X und Linux)

14 VBA für Excel Andreas RozekHyMeSys Software & Consulting VBA für Excel Excel als VBA-Entwicklungsumgebung (im Vergleich zu Java)

15 VBA für Excel Andreas RozekHyMeSys Software & Consulting Excel als Entwicklungsumgebung Entwicklerwerkzeuge einblenden Sicherheitseinstellungen anpassen Makro-Rekorder (wird hier nicht behandelt) Persönliche Makroarbeitsmappe c:\Dokumente und Einstellungen\benutzer\Anwendungsdaten\ Microsoft\Excel\XLSTART\Personal.xlsb

16 VBA für Excel Andreas RozekHyMeSys Software & Consulting Java-Übersetzungseinheiten Klassen (eine Klasse pro Datei) Pakete (packages, als Verzeichnis oder JAR-Archiv) z.B. unter Eclipse: Projekte und zusätzliche Dateien VBA (in Excel, Projekt-Explorer) Projekte (Arbeitsmappen, persönliche Makroarbeitsmappe) Excel-Objekte (Tabellenblätter u.a.)*.cls Formulare (UserForms)*.frm Standardmodule*.bas Klassenmodule*.cls

17 VBA für Excel Andreas RozekHyMeSys Software & Consulting Excel als Entwicklungsumgebung VBA-Editor Eigenschaftenfenster Direktbereich Editor-Einstellungen Kontext-sensitive Hilfe (F1), IntelliSense Objektkatalog (F2) Modul-Ebene, Prozedur-Ebene, Code-Ebene

18 VBA für Excel Andreas RozekHyMeSys Software & Consulting Excel als Entwicklungsumgebung (Fortsetzung) Ausführen einer Prozedur (F5) Haltepunkt setzen/löschen (F9) Einzelschritt (F8), Prozedurschritt (Shift-F8) Variablenwerte als Tool-Tip Lokalfenster: Variablen-Sichtung und -Verwaltung Überwachungsfenster: Überwachen von Ausdrücken Debug.print expression

19 VBA für Excel Andreas RozekHyMeSys Software & Consulting VBA für Excel Syntax und Semantik

20 VBA für Excel Andreas RozekHyMeSys Software & Consulting Grundlegendes zur Syntax eine Anweisung pro Zeile (Zeilenende = Anweisungsende) : als Trenner zwischen zwei Anweisungen _ als (Zeilen-)Fortsetzungszeichen Groß-/Kleinschreibung ist nicht signifikant Code-Editor paßt Schreibweise automatisch an ' als Kommentarzeichen (für Zeilenkommentare) Code-Editor (vgl. Eclipse) beherrscht IntelliSense, Syntax Colorization gibt häufig bereits den Rahmen für eine Prozedur vor

21 VBA für Excel Andreas RozekHyMeSys Software & Consulting Namen (Bezeichner) Zeichen erstes Zeichen muß ein Buchstabe sein danach sind Buchstaben, Ziffern und Unterstriche erlaubt Schlüsselworte sind zu meiden Groß-/Kleinschreibung wird nicht unterschieden ISO ist zulässig (Unicode?)

22 VBA für Excel Andreas RozekHyMeSys Software & Consulting Datentypen Boolean2 Bytestrue oder false Byte1 Byte Integer2 Bytes Long4 Bytes Single4 Bytes±3,402823e38...±1,401298e-45 Double8 Bytes±1, e ±4, e-324 Currency8 Bytes , ,5807

23 VBA für Excel Andreas RozekHyMeSys Software & Consulting Datentypen (Fortsetzung) Decimal14 Bytes(groß, Untertyp von Variant) Date8 Bytes Object4 BytesReferenz auf ein Objekt String10+n Bytesvariable Länge < Zeichen Stringn Bytesfeste Länge Zeichen Variant16 Bytesfür Zahlen Variant22+n Bytesfür Zeichenketten

24 VBA für Excel Andreas RozekHyMeSys Software & Consulting Datentypen-Suffixe Integer% Long& Single! Double# String$ Suffixe sind nicht Bestandteil des Variablennamens

25 VBA für Excel Andreas RozekHyMeSys Software & Consulting Namenskonventionen vor allem für Variablen und Konstanten machen (Variablen-)Eigenschaften namentlich sichtbar allgemeine Form [prefix]kind[name] Präfixe s = lokale, statische Variablen m = Modul-spezifische Variablen und Konstanten g = globale Variablen und Konstanten

26 VBA für Excel Andreas RozekHyMeSys Software & Consulting Namenskonventionen (Fortsetzung) Variablen-Arten für Excel-Blätter wksWorksheet (Arbeitsblatt)sht chtChart (Diagramm) frmForm (Dialog) basBasic (Standardmodul)mdl clsClass (Klassenmodul) xl4Excel4 (Makroblatt) im Falle einer Liste wird der Art ein s angehängt

27 VBA für Excel Andreas RozekHyMeSys Software & Consulting Namenskonventionen (Fortsetzung) Variablen-Arten für die verschiedenen Datentypen blnBoolean sngSingle curCurrency strString datDate typType (Benutzerdefiniert) dblDouble varVariant intInteger lngLong objObject

28 VBA für Excel Andreas RozekHyMeSys Software & Consulting Namenskonventionen (Fortsetzung) Variablen-Arten für die verschiedenen Steuerelemente lblLabel mpgMultiPage txtTextbox spnSpinButton cboCombobox scrScrollbar lstListbox imgImage chkCheckbox refRefEdit optOptionButton trvTreeView tglToggleButton lsvListView cmdCommandButton calCalendar tabTabStrip

29 VBA für Excel Andreas RozekHyMeSys Software & Consulting Deklaration von Variablen implizit (durch Verwendung in einer Zuweisung) varValue = implizit deklarierte Variable strValue$ = implizit deklarierte String-Variable explizit (irgendwo, aber vor der ersten Verwendung) dim varValue dim strValue as string dim|public|static name [as type] [, name [as type]] Verbieten impliziter Deklarationen option explicit

30 VBA für Excel Andreas RozekHyMeSys Software & Consulting Deklaration von Datenfeldern (Arrays) stets explizit dim varArray() dim intArray(4) as Integer dim strArray(-3 to 3) as String dim|public|static name (n | n to m [,... ] ) [as type] [,... ] bis zu 60(!) Dimensionen möglich Änderung des impliziten Start-Index option base 1 Änderung der Feldgröße zur Laufzeit redim varArray(3) redim preserve intArray(15)

31 VBA für Excel Andreas RozekHyMeSys Software & Consulting Gültigkeitsbereich von Variablen und Konstanten Deklaration auf Modulebene ( public ) innerhalb des gesamten Modules sichtbar Variablenwert bleibt erhalten Deklaration auf Prozedurebene ( dim ) nur innerhalb der Prozedur sichtbar auf Modulebene deklarierte Variablen dürfen überdeckt werden statische Variablen behalten ihren Wert

32 VBA für Excel Andreas RozekHyMeSys Software & Consulting Literale Zahlen e-56 Zeichenketten dies ist ein Text Datum und Uhrzeit #21/07/2008 9:15:35# Konstanten const conValue = Zeichenkette const conValue = 1234 const conValue = 1234e-56 const conValue = #21/07/2008 9:15:35# const conValue as String = Zeichenkette const conValue as Integer = 1234 const name [as type] = value

33 VBA für Excel Andreas RozekHyMeSys Software & Consulting Arithmetische Operatoren Potenzierung ^ a ^ b Grundrechenarten + - * / a + b Ganzzahldivision \ a \ b Modulo-Division mod a mod b Negation -- a Potenzierung negativer Zahlen nur für ganzzahlige Exponenten Ganzzahldivision wandelt Argumente in Byte/Integer/Long Modulo-Division liefert Divisionsrest

34 VBA für Excel Andreas RozekHyMeSys Software & Consulting Vergleichsoperatoren Vergleich = > a < b Gleichheit = a = b Ungleichheit<> a <> b Referenzvergleich is a is b Ähnlichkeit like a like pattern Zeichenkettenvergleich vergleicht ASCII-Codes like-Operator erlaubt Platzhalter (? *) im Vergleichsmuster

35 VBA für Excel Andreas RozekHyMeSys Software & Consulting Logische Operatoren ab: Konjunktion and a and b 0001 Äquivalenz eqv a eqv b 1001 Implikation imp a imp b 1011 Negation notnot a Disjunktion or a or b0111 Antivalenz xor a xor b0110

36 VBA für Excel Andreas RozekHyMeSys Software & Consulting Verkettungsoperatoren Verkettung & a & b Verkettung + a + b Operator-Hierarchie ^ - * / \ mod + - & = <> = is like not and or xor eqv imp

37 VBA für Excel Andreas RozekHyMeSys Software & Consulting Fallunterscheidungen if... then... else if condition then [...] [else [...] ] if condition then... [elseif condition then... ] [else... ] end if verschachtelbar

38 VBA für Excel Andreas RozekHyMeSys Software & Consulting Fallunterscheidungen (Fortsetzung) select case select case expression [case expression [,... ]... ] [case n to m [,... ]... ] [case is | >= | = | <> expression... ] [case else... ] end select kein break erforderlich!

39 VBA für Excel Andreas RozekHyMeSys Software & Consulting Schleifen for... next for counter = first to last [step delta ]... [exit for] next [ counter ] Zählvariable außerhalb der Schleife deklarieren Zählvariable innerhalb der Schleife nicht verändern! Vorsicht mit Zählvariablen vom Typ single oder double

40 VBA für Excel Andreas RozekHyMeSys Software & Consulting Schleifen (Fortsetzung) for each for each element in group... [exit for] next [ element ] Gruppen können Arrays oder Collections sein auch mehrdimensionale Arrays zulässig (niedrige Indices werden zuerst durchlaufen)

41 VBA für Excel Andreas RozekHyMeSys Software & Consulting Schleifen (Fortsetzung) do do [ while | until condition]... [exit do] loop do... [exit do] loop [ while | until condition] auch Endlosschleifen möglich

42 VBA für Excel Andreas RozekHyMeSys Software & Consulting Schleifen (Fortsetzung) while while condition... wend bitte nicht mehr verwenden (deprecated) kein Verlassen der Schleife möglich

43 VBA für Excel Andreas RozekHyMeSys Software & Consulting Goto und Sprungmarken goto goto line | label Sprungmarken number label: alphanumerische Sprungmarken: erstes Zeichen muß ein Buchstabe sein danach können Buchstaben oder Ziffern folgen für on error goto von Bedeutung

44 VBA für Excel Andreas RozekHyMeSys Software & Consulting Prozeduren: Subroutinen und Funktionen Subroutinen [private | public][static] sub name [( params )]... [exit sub] end sub Parameterlisten [optional][byVal | byRef][ParamArray] name [()][as type ][= def ] im Normalfall [byVal | byRef] name [()][as type ] static läßt alle inneren Variablen einen Prozedur-Aufruf überdauern

45 VBA für Excel Andreas RozekHyMeSys Software & Consulting Prozeduren (Fortsetzung) Funktionen [private | public ][static] function name [( params )][as type ]... [exit function]... name = expression end function Sichtbarkeit von Prozeduren publicvon allen Modulen aller Projekte aus aufrufbar privatenur aus dem eigenen Modul aus aufrufbar ( static hat nichts mit der Sichtbarkeit zu tun)

46 VBA für Excel Andreas RozekHyMeSys Software & Consulting Aufruf von Prozeduren Subroutinen [call] name [(] [ argument [, argument ]] [)] Funktionen... = name ([ argument [, argument ]]) Übergabe von Argumenten byValue für Variablen und Ausdrücke, Übergabe einer Kopie byRef nur für Variablen, Übergabe einer Referenz

47 VBA für Excel Andreas RozekHyMeSys Software & Consulting Konvertierungsfunktionen CBool ( expression ) Boolean CByte ( expression ) Byte CCur ( expression ) Currency CDate ( expression ) Date CDbl ( expression ) Double CDec ( expression ) Decimal CInt ( expression ) Integer CLng ( expression ) Long CSng ( expression ) Single CVar ( expression ) Variant CStr ( expression ) String

48 VBA für Excel Andreas RozekHyMeSys Software & Consulting Konvertierungsfunktionen (Fortsetzung) Val ( string-expression ) Zahl Str ( number-expression ) String Hex ( number-expression ) Hexadezimal-Darstellung Oct ( number-expression ) Oktal-Darstellung Asc ( string-expression ) Zeichencode des ersten Zeichens Chr ( byte-expression ) Zeichen mit ggb. Zeichencode

49 VBA für Excel Andreas RozekHyMeSys Software & Consulting Datentypen (o.ä.) überprüfen oder anzeigen IsArray ( variable ) ist Variable ein Feld? IsDate ( expression ) ist Ausdruck vom Typ Date? IsEmpty ( expression ) ist Ausdruck initialisiert? IsError ( expression ) enthält Ausdruck ein Fehler-Objekt? IsMissing ( expression ) ist optionales Argument vorhanden? IsNull ( expression ) enthält Ausdruck nur Null-Werte? IsNumeric ( expression ) ist Ausdruck numerisch? IsObject ( variable ) enthält Variable eine Objekt-Referenz? TypeName ( expression ) liefert den Datentyp des Ausdruckes

50 VBA für Excel Andreas RozekHyMeSys Software & Consulting Klassen Instanzieren ja, Vererbung nein Anlegen und Verwalten über den Code-Editor in eigenem Klassenmodul nur Instanzen-Methoden und -Eigenschaften static bedeutet: alle Prozedur-internen Variablen überdauern einen Aufruf (erspart viele einzelne " static "s) Selbst-Referenz me

51 VBA für Excel Andreas RozekHyMeSys Software & Consulting Eigenschaftsprozeduren Auslesen einer Eigenschaft [public | private] [static] property get name [(params)] as type... [exit property]... [name = expression] end property Zuweisen eines Wertes an eine Eigenschaft [public | private] [static] property let name ([params,] value)... [exit property] end property Zuweisen einer Referenz an eine Eigenschaft [public | private] [static] property set name ([params,] reference)... [exit property] end property

52 VBA für Excel Andreas RozekHyMeSys Software & Consulting Konstruktor und Destruktor Konstruktor private sub Class_initialize () end sub Destruktor private sub Class_terminate () end sub Selbst-Referenz me

53 VBA für Excel Andreas RozekHyMeSys Software & Consulting Verwenden von Klassen und Objekten Zuweisung von Referenzen dim name as Object set name = reference Instanzieren einer Klasse set name = new class Adressieren von Eigenschaften... = instance.property instance.property =...

54 VBA für Excel Andreas RozekHyMeSys Software & Consulting Verwenden von Klassen und Objekten Null-Referenz set name = nothing if expression is nothing then... with... end with with instance... end with Vorsicht bei Schachtelungen!

55 VBA für Excel Andreas RozekHyMeSys Software & Consulting Funktionen für die Ein- und Ausgabe Ausgabe im Direktbereich debug.print argument Meldungsfenster... = MsgBox(prompt [, buttons] [, title]) Konstanten für buttons und Rückgabewerte siehe Objektkatalog Eingabefenster... = InputBox(prompt [,title] [, default]) gibt immer eine Zeichenkette zurück

56 VBA für Excel Andreas RozekHyMeSys Software & Consulting Mathematische Funktionen abs (expression) Betrag atn (expression) Arcustangens cos (expression) Cosinus exp (expression) Exponentialfunktion fix (expression) ganzzahliger Anteil (Rundung gegen 0) int (expression) ganzzahliger Anteil (Rundung gegen -infty) log (expression) natürlicher Logarithmus rnd ([seed]) Zufallszahl sng (expression) Vorzeichenfunktion -1,0,+1 sin (expression) Sinus sqr (expression) Quadratwurzel tan (expression) Tangens

57 VBA für Excel Andreas RozekHyMeSys Software & Consulting Zeichenketten-Funktionen liegen z.T. in Byte- und Wort-Varianten vor (Unicode) ZeichenkettenlängeEntfernen von Weißzeichen... = len (str)... = trim (str) Zeichenkettenausschnitte... = left(str,len)... = mid(str,start,len)... = right(str,len) Zeichenkettenumwandlungen... = lcase (str)... = ucase (str)

58 VBA für Excel Andreas RozekHyMeSys Software & Consulting Datum und Uhrzeit aktuelles Datum/aktuelle Uhrzeit Date()Time()Now() Bestandteile eines Datums/einer Uhrzeit Day( date )Month( date )Year( date ) Hour( time )Minute( time )Second( time ) konkretes Datum/konkrete Uhrzeit DateSerial( year, month, day ) TimeSerial( hour, minute, second ) Wochentage und Monate Weekday( date [, firstdayofweek] ) WeekdayName( date, abbreviated, firstdayofweek ) MonthName( month [, abbreviated] )

59 VBA für Excel Andreas RozekHyMeSys Software & Consulting Übungen spielen sich heute im Code-Editor und im Direktbereich ab öffnen Sie Excel, nehmen Sie die Entwicklungseinstellungen vor und öffnen Sie den Code-Editor im Direktbereich: debug.print Hello, World! debug.print sind zuviele Zeichen? schreiben Sie eine Sub- routine namens say, die einen Zeichenketten-Parameter erwartet und diesen mittels debug.print ausgibt

60 VBA für Excel Andreas RozekHyMeSys Software & Consulting Übungen (Fortsetzung) machen Sie den Parameter optional (Default ist ) entfernen Sie den Default und prüfen Sie stattdessen in Ihrer Prozedur, ob ein Argument übergeben wurde – falls nicht, geben Sie (null) aus ersetzen Sie den einzelnen Parameter durch ein ParamArray und geben Sie alle Elemente dieses Feldes per debug.print aus jetzt geben Sie alle Elemente in einer Zeile aus als nächstes puffern Sie die übergebenen Texte zwischen und implementieren einen Zeilenumbruch nach 80 Zeichen

61 VBA für Excel Andreas RozekHyMeSys Software & Consulting Übungen (Fortsetzung) legen Sie eine neue Klasse Console an – diese wird gleich die Konsolenausgabe vereinfachen legen Sie eine private Klassen-Variable Buffer an, die die je- weilige Ausgbezeile zwischenspeichert, initialisieren Sie mit legen Sie eine statische Methode print an, die wie zuvor say zunächst alle Ausgaben zwischenspeichert und nach max. 80 Zeichen per debug.print ausgibt (nicht aber, wenn die Zeile noch nicht voll ist) legen Sie eine weitere Methode println an, die sich wie print verhält, aber am Ende den Puffer-Inhalt ausschreibt

62 VBA für Excel Andreas RozekHyMeSys Software & Consulting Übungen (Fortsetzung) programmieren Sie einen elektronischen Würfel versuchen Sie, das Würfelergebnis quasi-grafisch in den Direktbereich auszugeben programmieren Sie einen Lottozahlengenerator können Sie auch dessen Ausgabe quasi-grafisch (wie auf einem Lottoschein) anzeigen?

63 VBA für Excel Andreas RozekHyMeSys Software & Consulting Übungen (Fortsetzung) ermitteln Sie für ein gegebenes Datum die aktuelle Kalender- woche – tragen Sie diese Funktion als zusätzliche Funktion in Excel ein ermitteln Sie für einen ggb. Monat die Anzahl der Arbeitstage (zunächst noch ohne Feiertage) legen Sie ein Feld von Feiertagen an (für ein ggb. Jahr) und berücksichtigen Sie dieses bei der Ermittelung der Arbeitstage wie spät ist es? wie lange dauert es noch bis zum Ende dieses Kurses?

64 VBA für Excel Andreas RozekHyMeSys Software & Consulting Übungen (Fortsetzung) geben Sie mittels MsgBox eine Nachricht aus – suchen Sie zuvor die Liste der Konstanten für die buttons heraus welchen Button hat der Benutzer gedrückt? Zeigen Sie ihn an lassen Sie den Benutzer mittels InputBox einen Text eingeben und zeigen Sie diesen an – was passiert, wenn der Benutzer die Eingabe abbricht?


Herunterladen ppt "VBA für Excel 22.02.2010 Andreas RozekHyMeSys Software & Consulting VBA für Excel eine Einführung in das Programmieren mit Visual Basic for Applications."

Ähnliche Präsentationen


Google-Anzeigen