Excel 2013 VBA für Profis

Info anzeigen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Damit bei Weiterentwicklungen stets Version und Stand ermittelt werden können, lassen Sie diese einfach "im Kleingedruckten" des Formulars anzeigen. Diese Daten sind selbstverständlich modulweit einheitlich.

Transkript

Nach meiner Erfahrung ist in solchen Projekten sehr schnell der Wunsch da, noch irgendwas zusätzlich zu können. Ich kann also jetzt schon fest damit rechnen, dass zu diesem einen Formular oder Dialog, oder wie immer Sie das nennen, vielleicht später nochmal ein zweiter, dritter kommt. Da finde ich es immer ganz hilfreich, wenn das fast absehbar ein größeres Projekt wird, dass man da so ein kleines Info macht, dass man auch die Version, die Nummer und sowas direkt mit organisiert. Das bedeutet, zusätzlich zu diesem Formular brauche ich erstmal ein ganz normales Modul, das werde ich sowieso irgendwann gebrauchen. Und dort, ich nenne das jetzt einfach mal modAllgemein, dort stehen sowohl die Public Konstante, die ich jetzt brauche, als auch später der Aufruf dieses Formulars, wenn wir es denn nicht mehr mit F5 aufrufen wollen. Also hier die Sammlung von Public Const, die deswegen mit p_c anfangen. Und zum Beispiel strAppName für den Namen. Und das Ganze nennen wir dann mal Zellen&Tabellen. Sowie ebenfalls Public Const p_c, für die Version, strAppVersion. Ist bei mir immer ein String, damit ich nämlich sowas wie "1.00a" schreiben darf. Der Punkt wäre vielleicht noch hinzukriegen, aber das "a" bedingt, dass es ein String ist. Dann Public Const p_cdatAppStand. Nicht "Abstand", sondern "Application Stand". Und das ist ein völlig beliebiges Datum, also sagen wir mal ruhig den 24.12.2013. Im echten Leben hätten Sie da natürlich das jeweilige Tagesdatum drin. Schon allein deswegen, weil für kleinste Änderungen, ich sage mal einfach nur die Farbe des Formulars, der Speicherdatum-Stand sich ändert. Aber hier intern immer noch zu sehen ist, die eigentliche Programmierung ist aber von dann und dann. Und entsprechend die Version zähle ich in den Buchstaben a, b, c vielleicht hoch, aber erst wenn sich wirklich was ändert, fange ich an, auch Ziffern zu ändern. Und natürlich der Autor. Da bin ich wie viele andere auch eitel genug, dass ich das gern drinstehen haben möchte. Also das ist so ein Viererpack, was eigentlich überall vorkommt. Und genau genommen ist das Viererpack ein Fünferpack, denn für Meldungen oder Beschriftungen oder sonst was, stelle ich mir direkt ein fünftes bereit. Also p_cstrAppMeldung zum Beispiel. Das setzt sich zusammen aus diversen anderen, nämlich dem AppName, das kann ich mit Strg+Leertaste jetzt hier anzeigen lassen, verkettet mit Version, verkettet mit genau jener Version als Konstante, und wiederum verkettet mit der schließenden Klammer. Das heißt, hier steht sowas drin wie: Zellen&Tabellen, Version 1.00a in Klammern. Das kann man immer dann benutzen, wenn man MsgBoxen machen will und das darüber stehen soll statt des Standardtextes Microsoft Excel. So, das ist so weit für modAllgemein erstmal fertig. Jetzt kommt wieder dlgAdressen. Mit Doppelklick können Sie den auf den Bildschirm holen. Und dort möchte ich aus der Toolsammlung ein Label einfügen, welches hier, müssen wir mal gucken, wie viel Platz wir brauchen, steht. lblInfo. Der Text ist völlig egal. Nur die Color, also die ForeColor, die der Schrift nämlich werde ich in der Palette auf Hellgrau stellen. Und dann kann ich mit der ersten Programmierung anfangen. Das sollte vielleicht auch noch durchsichtig werden, mit Doppelklick auf den BackStyle. Dann kann ich mit der Programmierung anfangen. Ich werde jetzt fälschlich sozusagen einen Doppelklick machen. Dann komme ich nämlich fälschlich in UserForm_Click, wo ich eigentlich gern UserForm_Initialize hätte. Aber es ist trotzdem am schnellsten, vor allem wenn ich jetzt die Leiche hier lösche. UserForm_Initialize wird ja aufgerufen, wenn das Formular aufgerufen wird, und zwar kurz bevor es erscheint. Dort kann ich also alles vorbereiten und machen, was ich so brauche. Zum Beispiel, dass Me.Caption sich ändert und sowas lauten soll wie p_cstrAppName. Und dann schreibe ich dahinter "Adressen übernehmen", sodass alle Dialoge, alle Formulare oben immer den AppName, also den Namen des kleinen Programms, was wir hier schreiben, enthalten. Dann sieht man immer gleich, Achtung, ist kein original Excel-Dialog, sondern einer von diesen Add-In, von dieser Datei, von was auch immer. Denn die können Sie so täuschend ähnlich machen, dass man glaubt, man hätte einen Excel-Dialog vor sich. Außerdem; das werde ich ein bisschen abrücken, weil das sehr viel umfangreicher ist; außerdem möchte ich dieses kleine Info noch ordentlich beschriften. Dessen Caption, also Me in dem Formular, lblInfo, Ungarische Notation. Deswegen habe ich ein lbl hier stehen. .Caption, also dessen Beschriftung sieht folgendermaßen aus. Ich möchte vermerken: "Name: ". Das haben wir zwar schon im Titel, aber es sieht da vielleicht nicht jeder. Verkettet mit einem Umbruch, vbcrlf, das ist der Umbruch, der hinterher zu sehen ist. Verkettet mit, und jetzt kommt Leerzeichen, Unterstrich, Return, und für die Optik mit Tab-Taste eingerückt. Leerzeichen, Unterstrich, Return ist ja dieser Pseudoumbruch, der nur für den Compiler unsichtbar ist. Ihre Augen sehen im Code einen Umbruch, der Compiler nicht. vbcrlf ist im Ergebnis der Umbruch. Das heißt, es gibt insgesamt eine vierzeilige Anzeige, nämlich in diesem Fall noch von der Version. Und das muss ich gleich oben noch nachpflegen. Mit vbTab haben wir die auch schön auf gleichen Abstand gesetzt. Das werden Sie gleich sehen. Also mit Strgy+Leertaste ausgeklappt. Jetzt die Version. Wieder ein Umbruch, vbcrlf. Das sieht jetzt sehr kompliziert aus, aber wenn man das zwei-, dreimal gemacht hat, dann hat man automatisch im Kopf, wie sich das jetzt zusammensetzt. Es ist eigentlich immer abwechselnd ein Text, ein Tab, ein Inhalt, ein Return. Strg+Leertaste, was brauchen wir da, den Stand. Stand ist natürlich ein dat, deswegen habe ich das da nicht gefunden, was automatisch systemgemäß das Datum anzeigt, also wie es in der Systemsteuerung vereinbart ist. Dann die letzte Zeile. So viel Bescheidenheit muss dann doch sein. Der Auto ganz nach hinten. Und zwar mit der Konstanten AppAutor. Da oben fehlt noch ein Tab. Ich wollte nämlich hier, vbTab, einen entsprechenden Abstand einbauen. Sicherheitshalber einmal aber da ist ja noch nichts Kompliziertes drin, was scheitern könnte. Nach dem Speichern wollen wir mal mit F5 gucken, wie es aussieht. Da steht "Zellen&Tabellen: Adressen übernehmen". Das ist Me.Caption. Und hier, das kann noch einen Tick tiefer, sind dann die 4 Zeilen und das ist das, was das Tab-Zeichen ausmacht. Obwohl die einen unterschiedlichen Abstand haben, fangen die hier wieder an der gleichen Stelle an. Und das kann irgendwie so um einen Rasterpunkt nach unten. Mit Esc schließt sich das ja freiwillig. Und ich schicke das mal testweise einen tiefer. Und finde ich so schon viel schöner. Diese Stelle hier nutze ich eigentlich immer, um solche kleinen Infos zu machen. Die ist normalerweise nicht ganz so groß, meine Logos sind durchaus auch mal kleiner. Das hat aber erstens den Vorteil der Einheitlichkeit. Man sieht schon an dem Logo, der war es jetzt. Und hier ist immer Platz für zum Beispiel kleine Erläuterungen, Hilfstexte oder manchmal auch, wenn da oben was passiert, eine geänderte Anzeige. Ist sozusagen sowas wie eine Statuszeile im Dialog. Damit ist der Dialog erstmal so weit schöner gemacht. Die erste Programmierung hat angefangen. Und das wird weiterhin; mit einem Doppelklick kommen wir da jetzt wieder hin; weiterhin erstmal ganz viel im UserForm_Initialize passieren, damit der Dialog überhaupt richtig anfängt, ohne dass Sie was vorherbestimmen müssen. Der muss alles selber rauskriegen. Bis dahin sieht er gut aus. Jetzt muss er auch lernen, was zu können.

Excel 2013 VBA für Profis

Nutzen Sie die Möglichkeiten der Programmiersprache VBA in Excel 2013, um eigene Dialoge zu erstellen, auf andere Arbeitsmappen zuzugreifen und wichtige Funktionen einzusetzen.

4 Std. 59 min (53 Videos)
Derzeit sind keine Feedbacks vorhanden...

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!