Umfangreiche Texte in Code integrieren

Es gibt Aufgaben, um die schlägt man sich nicht. Eine davon ist es, größere Texte hart im VBA-Code zu verdrahten, sodass diese später weiterverarbeitet werden kann. Ein Beispiel ist das Zusammenstellen eines XML-Dokuments, von dem man eine Vorlage hat, und das man mit eigenen Werten füllen möchte, um es dann beispielsweise als Anfrage an einen Webservice zu schicken. Oder man möchte den Inhalt einer Mail per VBA an Outlook schicken und versenden, nachdem man den Mailtext noch um individuelle Inhalte wie Anrede oder Name des Empfängers ergänzt hat. Sprich: Uns liegt ein mehrzeiliger Text vor, den wir irgendwie in eine Variable packen wollen – und zwar ausschließlich per VBA-Code. Wie das gelingt, zeigt der vorliegende Artikel.

Weiterlesen

Buttons in Excel

In anderen Artikeln zeigen wir, wie Du Makros in Excel aufzeichnest oder wie Du per VBA-Prozedur auf die verschiedenen Elemente einer Excel-Arbeitsmappe zugreifen kannst. Diese Makros sind durchaus praktisch, aber der Nutzen reduziert sich doch, wenn man zum Ausführen beziehungsweise aufrufen immer den VBA-Editor anzeigen muss. Also zeigen wir im vorliegenden Artikel, wie Du einem Arbeitsblatt in Excel eine Schaltfläche hinzufügst, mit der Du die für dieses Arbeitsblatt vorgesehenen VBA-Prozeduren beziehungsweise Makros viel schneller und komfortabler aufrufen kannst.

Weiterlesen

Excel: Arbeitsblätter per Ribbon steuern

Wenn Du eine eigene Excel-Lösung mit einigen Arbeitsblättern erstellt hast, stört es Dich vielleicht, dass Du nicht schnell über die Registerreiter unten im Excel-Fenster auf alle Arbeitsblätter zugreifen kannst. Je nach Fenstergröße und Anzahl der Arbeitsblätter zeigt Excel dort nämlich nicht alle Arbeitsblätter an. Damit haben wir allerdings ein schönes Beispiel für den Einsatz des Ribbons in einer Excel-Arbeitsmappe. Diesem fügen wir ein Tab mit einem Button für jedes Arbeitsblatt, das schnell erreichbar sein soll, hinzu. Das Ribbon hat noch einen Vorteil: Wenn wir dort für die wichtigsten Arbeitsblätter je eine Schaltfläche hinzufügen, können wir diese auch noch mit einem Icon ausstatten, um das gesuchte Arbeitsblatt noch schneller zu finden.

Weiterlesen

Excel: Sheet-Navigation per Button

Wenn man ein Excel-Workbook mit vielen verschiedenen Worksheets verwendet, möchte man beim Öffnen des Workbooks vielleicht eine Übersichtsseite präsentiert bekommen, von der aus man per Mausklick auf entsprechende Schaltflächen zu den übrigen Worksheets gelangt – und am besten von dort aus mit einer weiteren Schaltfläche wieder zurück zur Übersicht. In diesem Artikel zeigen wir, wie das gelingt, und warum wir noch nicht mal eine einzige Zeile VBA-Code für dieses Vorhaben benötigen.

Weiterlesen

Einfache Excel-Formulare erstellen

Excel kann nicht nur einfach Daten in Tabellenform anzeigen. Es bietet auch verschiedene Möglichkeiten, um Daten auszuwerten, beispielsweise in Diagrammen, oder auch Möglichkeiten zur komfortableren Eingabe von Daten. Wer zum Beispiel sonst mit Access arbeitet, dass man dem Benutzer dort üblicherweise Formulare zur Verfügung stellt, um die Daten einzugeben, zu betrachten und zu verwalten. Warum also sollte man den Anwender in Excel mit riesigen “Tapeten” von Daten quälen, statt im jeweils den Inhalt einer Zeile der Tabelle zum Betrachten und zum Bearbeiten anzubieten? Dieser Artikel zeigt eine sehr einfache Möglichkeit, um dem Benutzer ein ergonomischeres Erlebnis zu bieten.

Weiterlesen

Office-Ereignisse mit VBA programmieren

Visual Basic for Applications, kurz VBA, ist eine Ableitung der Programmiersprache Visual Basic. Im Gegensatz zu diesem, das mit Visual Basic 6 vor einigen Jahren seine letzte Version erlebt hat, erfreut sich VBA immer noch reger Beliebtheit. Das liegt vor allem an seinem Hauptzweck: der Programmierung und der Steuerung von automatisierten Abläufen in den Office-Anwendungen, zum Beispiel Access, Excel, Outlook, PowerPoint oder Word. Der Kern dieser Automatisierungen sind sogenannte Ereignisse, also Prozeduren, die an einer bestimmten Stelle unter einem vordefinierten Namen hinzugefügt und dann durch das jeweilige Ereignis automatisch ausgelöst werden – beispielsweise dem Öffnen eines Dokuments oder dem Anklicken einer Schaltfläche. Dieser Artikel zeigt, welche Möglichkeiten die einzelnen Office-Anwendungen zum Einrichten von Ereignisprozeduren bieten und was bei der Automatisierung grundlegend zu beachten ist.

Weiterlesen

Makros in Office aktivieren

Wenn wir in den Anwendungen eines frisch installierten Office-Pakets VBA-Code ausführen wollen, führt dies mitunter nicht zum gewünschten Ergebnis. Stattdessen erscheint eine Meldung, die uns mitteilt, dass die Makros in diesem Projekt deaktiviert sind. Der Grund ist einfach: Mit VBA-Code können wir eine Menge Schaden anrichten, zum Beispiel Dateien oder Verzeichnisse löschen. Daher ist seine Ausführung standardmäßig deaktiviert. Wie wir den VBA-Code dennoch ausführen können, zeigt dieser Artikel.

Weiterlesen

Outlook: Die Application-Klasse

Die Basisklasse einer jeden Office-Anwendung heißt “Application”. Diese stellt je nach Anwendung verschiedene Eigenschaften, Methoden und Ereignisse bereit. Das ist auch im Objektmodell von Outlook der Fall. Hier finden wir beispielsweise die Möglichkeit für den Zugriff auf die “Explorer”- und “Inspector”-Elemente von Outlook, auf die kompletten E-Mails, Kontakte, Termine et cetera über die “GetNamespace”-Funktion oder das wichtige Ereignis “Startup”, mit dem wir gleich beim Start von Outlook wichtige, selbst programmierte Aktionen ausführen können. Dieser Artikel stellt die verschiedenen Member der Application-Klasse vor und beschreibt, was wir mit diesen alles erledigen können.

Weiterlesen

Ribbon-Signaturen für VBA, VB6 und twinBASIC

Wer Anwendungen programmiert, die das Ribbon anpassen, möchte die benutzerdefinierten Ribbon-Steuerelemente auch mit entsprechenden Callback-Prozeduren ausstatten. Dieser Artikel liefert eine Zusammenfassung der Ribbon-Signaturen für die Callback-Funktionen unter VBA und Visual Basic 6 beziehungsweise twinBASIC. Die VBA-Signaturen nutzen wir, wenn wir Ribbon-Erweiterungen direkt zu den mit den Office-Anwendungen erstellten Ribbonanpassungen hinzufügen wollen. Erstellen wir hingegen COM-Add-Ins mit VB6 oder twinBASIC, nutzen wir die alternativen Signaturen.

Weiterlesen

Setup für COM-DLLs mit Inno Setup

Eine COM-DLL mit Visual Studio zu entwickeln ist je nach der Aufgabenstellung schnell erledigt. Ein Klick auf Erstellen und die DLL kann auch schon in die jeweilige Anwendung eingebunden werden. Etwas komplizierter wird es, wenn diese DLL auf einem anderen Rechner installiert werden soll. Dazu reicht es zwar auch aus, die DLL und andere benötigte Dateien auf diesen Rechner zu kopieren und diese mit der App “Regasm.exe” zu registrieren, die auf jedem Rechner vorhanden ist. Allerdings möchte man das dem Kunden nicht unbedingt zumuten. Viel einfacher gelingt dies mit einem Setup, das erstaunlich schnell erstellt ist. Wie Sie ein Setup für die COM-DLL aus dem Artikel EPC-QR-Code per DLL (www.datenbankentwickler.net/****) erstellen, lesen Sie im vorliegenden Artikel.

Weiterlesen