VBA-Basics: Schnellstart

In diesem Magazin dreht sich Vieles um die Programmierung von Office-Anwendungen. Die Programmiersprache für die Programmierung in dem VBA-Projekten der jeweiligen Anwendungen heißt VBA – Visual Basic for Applications. Und auch wenn die Tools abseits des VBA-Editors, mit denen wir die Funktion von Office-Anwendungen erweitern wollen, teils andere Programmiersprachen wie VB.NET oder twinBASIC nutzen, so gibt es doch so viele Gemeinsamkeiten, dass wir zuerst einmal die Programmiersprache VBA im Detail betrachten wollen. Den Anfang machen wir mit diesem Artikel, der als Schnellstart die wichtigsten Informationen rund um VBA liefert – und auch die Elemente der Entwicklungsumgebung beschreibt, die wir zum Ausprobieren der in dieser Artikelreihe vorgestellten Techniken benötigen.

Weiterlesen

VBA-Basics: Variablen

Variablen sind die Möglichkeit unter VBA, bestimmte Werte wie Zahlen, Texte, Datumsangaben oder auch komplexere Elemente wie Verweise auf Objekte der Benutzeroberfläche der Office-Anwendungen oder auf selbst erstellte Objekte für den Zeitraum der Benutzung zu speichern und wieder abrufen zu können. Kurz gesagt: Mit Variablen merken wir uns verschiedene Dinge, die wir noch mal brauchen können. Dieser Artikel stellt die verschiedenen Basisdatentypen für Variablen vor und zeigt, wie wir diese deklarieren, mit Werten oder Verweisen füllen und diese wieder abfragen. Außerdem gehen wir auch auf den Gültigkeitsbereich, die Gültigkeitsdauer und die Frage der Benennung von Variablen ein.

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

Beispieldaten für ein EDM generieren

Im Artikel “Beispieldaten generieren mit Bogus” haben wir gezeigt, wie Sie grundsätzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verknüpften Tabellen gespeichert werden sollen – also beispielsweise in zwei Tabellen namens “Kunden” und “Bestellungen”, wobei die Tabelle “Bestellungen” über ein Fremdschlüsselfeld namens “KundeID” mit der Tabelle “Kunden” verknüpft ist. Wie das gelingt, und welche Techniken noch interessant sind für das Schreiben von Beispieldaten über ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.

Weiterlesen

Fensterposition beim Öffnen einstellen

Nachdem ich mittlerweile mit zwei Bildschirmen arbeite (einer für die Hauptanwendungen, einer für andere Informationen wie Termine et cetera) und der Bildschirm für die Hauptanwendungen der zweite Bildschirm ist, nervt es mich etwas, dass Anwendungen beim Debuggen immer auf dem sekundären Bildschirm angezeigt werden und ich diese immer erst auf den Hauptbildschirm ziehen muss. Also schauen wir uns in diesem Artikel an, welche Möglichkeiten .NET bietet, festzulegen, auf welchem Bildschirm eine Anwendung geöffnet werden soll.

Weiterlesen

Generische Auflistungen unter VB.NET

Der Unterschied zwischen generischen Auflistungen und nicht-generischen Auflistungen ist, dass Sie für die Elemente einer generischen Auflistung einen konkreten Datentyp vorgeben – das nennt man auch stark typisiert. Bei nicht-generischen Auflistungen nutzen Sie den Objekttyp Object und können somit Werte verschiedener Typen hinzufügen. Dieser Artikel stellt die Grundlagen zu generischen Auflistungsklassen vor und erläutert ihre Funktionsweise.

Weiterlesen

Reporting Services: Tabellarische Berichte

Eine der einfachsten Arten, Daten in Berichten darzustellen, ist die tabellarische Darstellung. Die Reporting Services bieten beispielsweise gegenüber Microsoft Access eine erhebliche Vereinfachung: Sie können hier ein Steuerelement speziell zur Anzeige von Daten als Tabelle verwenden. Wie Sie dieses Steuerelement nutzen, und wie Sie auch mehrseitige Berichte mit allen notwendigen Informationen darstellen, zeigt der vorliegende Artikel.

Weiterlesen

Das GridSplitter-Steuerelement

Das Grid-Steuerelement dürfte Ihnen als Leser dieses Magazins bekannt sein – wir verwenden es sehr oft, um die Position von Steuerelementen wie Bezeichnungsfeldern, Textfeldern oder Schaltflächen einzustellen. Im Zusammenhang mit dem Grid-Steuerelement müssen Sie ein weiteres Steuerelement unbedingt kennenlernen: das GridSplitter-Steuerelement. Dieses unterteilt das Grid zwischen zwei bestimmten Zeilen oder Spalten und bietet die Möglichkeit, dass Sie das Verhältnis des Höhe beziehungsweise Breite der Steuerelemente über/unter beziehungsweise links/rechts vom GridSplitter-Steuerelement einstellen können. Damit können Sie dann den jeweils benötigten Bereich vergrößern.

Weiterlesen

Das Menu-Steuerelement

Wie Sie einer Anwendung beziehungsweise einem Fenster einer WPF-Anwendung ein Ribbon hinzufügen können, haben wir an anderer Stelle bereits erläutert. Wer nicht auf die eher platzraubenden Ribbons steht, kann sich auch der klassischen Menüs bedienen. Diese lassen sich unter WPF genauso leicht definieren wie Ribbons. Dieser Artikel zeigt, wie Sie einem Fenster ein Menü hinzufügen und welche Steuerelemente sich dort unterbringen lassen. Damit die Optik nicht leidet, bauen wir auch hier passende Icons ein.

Weiterlesen

FlowDocumente mit VB zusammenstellen

FlowDocument-Element werden per RichTextBox-Feld eingegeben, per XAML definiert oder auch per VB zusammengestellt. Letzteres ist vor allem dann interessant, wenn Sie das Dokument mit den Daten aus einer externen Quelle wie einer Datenbank füllen wollen. So können Sie beispielsweise Rechnungen erstellen, Auflistungen von Produkten, Angebote und beliebige andere Dokumente. Diese können Sie dann als PDF verschicken oder ausdrucken. Dieser Artikel zeigt die Grundlagen zum Erstellen von FlowDocument-Objekten und zum Füllen mit den gewünschten Elementen und Inhalten.

Weiterlesen