Anwendungsdaten speichern per VB.NET

Wenn man wie im Artikel “Standalone-Apps mit .NET programmieren” beschrieben kleine Hilfsprogramme erstellt, kommt es vor, dass man dort Daten eingibt, die auch nach dem Schließen und dem erneuten Öffnen der Anwendung noch erhalten sein sollen. Wenn Du in einer solchen Anwendung beispielsweise immer wieder Daten aus dem gleichen Verzeichnis verarbeiten möchtest, willst Du das Verzeichnis nicht jedes Mal erneut auswählen. Man kann damit auch andere Daten wie Verbindungszeichenfolgen, Benutzernamen für Logins oder ganz allgemein Optionen speichern. All dies könnte man auch in einer Datenbank speichern, aber wenn die Menge der Daten überschaubar ist, erhalten wir mit der in diesem Artikel vorgestellten Lösung eine wesentlich leichtgewichtigere Alternative.

Weiterlesen

AfterUpdate für WPF-Steuerelemente mit VB.NET

Wenn man einfache Anwendungen wie im Artikel “Standalone-Apps mit .NET programmieren” beschrieben erstellt, stößt man relativ schnell an Grenzen. Eine davon sind die verfügbaren Ereignisse für Steuerelemente. Wer einmal mit Access gearbeitet hat, weiß, dass es für jedes Steuerelement ein Ereignis wie “Nach Aktualisierung” gibt. Unter WPF ist das nicht der Fall, was an der zugrunde liegenden Philosophie liegt. Diese lautet, dass Benutzeroberfläche und Anwendungslogik so weit wie möglich getrennt werden sollen. In diesem Artikel zeigen wir anhand eines Beispiels, wie sich dies in der Praxis auswirkt.

Weiterlesen

Mit JSON arbeiten

JSON heißt JavaScript Object Notation und ist ein Format ähnlich wie XML, mit dem Daten strukturiert gespeichert werden können. Als Visual Basic-Entwickler hat man üblicherweise nicht viele Berührungspunkte mit dieser Notation. Wenn man jedoch gelegentlich mit Webservices beziehungsweise Rest APIs arbeitet, findest der Datenaustausch entweder mit XML oder JSON statt. Während es für den Zugriff auf den Inhalt von XML-Dokumenten die Microsoft XML, vX.0-Bibliothek gibt, ist man bei JSON auf Lösungen von Drittherstellern angewiesen. In diesem Fall nutzen wir eine Bibliothek von Tim Hall und eine Erweiterung im Eigenbau, mit der wir relativ einfach auf die Daten in JSON-Dokumenten zugreifen können.

Weiterlesen

Excel: Benutzerdefinierte Funktionen per Add-In

Benutzerdefinierte VBA-Funktionen lassen sich leicht zu einem Excel-Workbook hinzufügen. Sie sind dann aber normalerweise nur in dem entsprechenden Workbook verfügbar. Was aber, wenn Du richtig coole Funktionen entwickelt hast, die Du nicht nur in einem Workbook nutzen möchtest, sondern in verschiedenen Dateien – und Du hast keine Lust, den VBA-Code immer wieder in das VBA-Projekt neuer Workbooks zu kopieren? In diesem Fall gibt es gute Nachrichten: Excel bietet nämlich den Dateityp Excel-Add-In an, dem Du Funktionen hinzufügen kannst, die immer verfügbar sind, wenn Excel geöffnet ist.

Weiterlesen

QR-Codes per .NET-Anwendung erstellen

QR-Codes sind praktische Helfer in der heutigen Zeit der Smartphones und ihren Kameras. Man kann damit wichtige Informationen so codieren, dass man diese mit der Kamera erkennen und weiterverarbeiten kann – standardmäßig so, dass der Code eine URL zu einer Webseite erhält und man diese dann im Browser des Smartphones aufrufen und die Inhalte konsumieren kann. Dieser Artikel zeigt, wie Du QR-Codes mit .NET-Anwendung erstellen kannst. Dreh- und Angelpunkt ist dabei ein NuGet-Paket, das die Funktionen für die Erstellung von QR-Codes auf Basis verschiedener Informationen bereitstellt. Der Artikel zeigt, wie wir dieses Paket in ein .NET-Projekt einbinden und es dann nutzen können.

Weiterlesen

Excel: Add-In mit Ribbon-Button erstellen

Wir können Excel nicht nur um benutzerdefinierte Funktionen erweitern, die wir in eine Add-In-Datei schreiben und die dann überall als Formel verfügbar sind. Wir können auch Funktionen hinzufügen, mit denen wir die Anwendung um selbst programmierte Abläufe erweitern. In diesem Artikel zeigen wir, wie Du einem Excel-Add-In ein eigenes Ribbontab hinzufügst sowie eine Funktion, die durch einen Button auf diesem Ribbontab ausgelöst wird.

Weiterlesen

Übersetzen mit Word und DeepL

Nachdem wir schon gezeigt haben, wie Du Texte in einer Excel-Tabelle übersetzen kannst, schauen wir uns nun an, wir die die DeepL-Techniken für die Gegenüberstellung der englischen und der deutschen Version eines Textes nutzen können. Dazu wollen wir bei einem Text beginnen, der sich in einem Word-Dokument befindet und diesen in ein neues Dokument übertragen, wo wir die einzelnen Absätze des Textes in jeweils eine Zelle in der linken Spalte einer Word-Tabelle einfügen. Nachdem wir den Text so auf die Zellen einer Tabelle aufgeteilt haben, wollen wir in der rechten Spalte per Aufruf der DeepL-REST-API die Übersetzung in der gewünschten Sprache unterbringen. Das Ergebnis: Die Übersetzung eines Textes, wobei jeweils ein Absatz in der einen Sprache dem gleichen Absatz in der anderen Sprache gegenübergestellt wird.

Weiterlesen

COM-Add-In zum Übersetzen von Word-Dokumenten

Das Internet bietet für beinahe jeden Zweck einen Service. Auch für das Übersetzen von Texten. Ein Anbieter heißt DeepL. Er bietet nicht nur eine Benutzeroberfläche, in die man Texte eingeben kann, die direkt übersetzt werden, sondern auch noch eine API. Dieser können wir programmgesteuert Texte übergeben und die Übersetzung entgegennehmen. Das ist sehr praktisch für diejenigen Bereiche der Programmierung, wo man Texte in einer anderen oder in mehreren Sprachen braucht. In diesem Artikel wollen wir uns jedoch ansehen, wie wir aus den Techniken, die wir in weiteren Artikeln vorgestellt haben, ein COM-Add-In bauen, das sich nahtlos in die Word-Benutzeroberfläche eingliedert und auf Knopfdruck komplette Dokumente oder auch nur markierte Bereiche in die gewünschte Sprache übersetzt.

Weiterlesen

Word mit VBA programmieren

Genau wie in Outlook oder Excel gibt es auch in Word ausreichende Möglichkeiten, um sich wiederholende Vorgänge zu automatisieren oder zu vereinfachen. Dazu benötigen wir die Programmiersprache VBA und das Objektmodell zur Programmierung von Word und den darin angezeigten Dokumenten. Im vorliegenden Beitrag schauen wir uns zunächst einmal an, wie wir von außen, also beispielsweise von einer anderen Anwendung aus, eine Word-Instanz initialisieren und diese nutzen können. Bei den weiteren Beispielen starten wir jedoch direkt vom VBA-Projekt des aktuell geöffneten Word-Dokuments aus.

Weiterlesen

VBA-Ereignisse in Word programmieren

Microsoft Word bietet für das Application- und für das Document-Objekt einige sehr interessante Ereignisse an. Diese können wir implementieren und damit auf verschiedene Benutzeraktionen wie das Öffnen, Speichern oder Schließen eines Dokuments oder auch auf andere Aktionen zu reagieren. In diesem Artikel stellen wir die Ereignisse vor und zeigen, wie Du diese implementieren und mit eigenem Code füllen kannst. Damit lernst Du, wie Du auf das Öffnen, Schließen oder Anlegen von Dokumenten reagieren kannst oder wie sich Ereignisse programmieren lassen, die beim Drucken oder Speichern ausgelöst werden. Auch Aktionen wie ein Doppelklick oder ein Rechtsklick auf die Inhalte des Word-Dokuments lassen sich damit steuern. Wie das gelingt, zeigen wir in diesem Artikel.

Weiterlesen