JSON-Daten auslesen

Für XML gibt es eine eigene Bibliothek zum Lesen und Schreiben der Inhalte eines XML-Dokuments. Bei JSON sieht das anders aus: Microsoft hat bisher keine Bibliothek bereitgestellt, mit dem man komfortable auf ein JSON-Dokument zugreifen kann. Wir wollen diesen Missstand zumindest ein wenig lindern. Es gibt bereits ein Modul, welches den Inhalt einer JSON-Datei in eine Art Objektmodell einliest, das von VBA aus wesentlich einfacher zu lesen ist. Dieses greifen wir in diesem Beitrag auf und zeigen, wie wir die Struktur der enthaltenen Daten erfassen und damit besser und systematisch auswerten können.

Weiterlesen

Mit Access auf Notion zugreifen

Notion ist die Produktivitätsapp der Stunde, wenn es um Verwaltung von Listen, Projekten, Teams und vieles mehr geht. Eigentlich sind die Möglichkeiten nur durch die Phantasie begrenzt. Logisch, dass wir uns ansehen wollen, ob man die Daten, die man in Notion angelegt hat, auch von Access aus einlesen kann oder ob man sogar Daten von Access aus nach Notion verschieben kann.

Weiterlesen

Produktivität mit Notion steigern

Gelegentlich gönnen wir von Access im Unternehmen uns einen Ausflug zu einer anderen Anwendung. In diesem Fall geht es um Notion, einer modernen Produktivitätsapp. Eigentlich ist gar keine große Rechtfertigung notwendig, denn die meisten Leser dieses Magazins arbeiten vermutlich produktiv mit Access und sind auf eine entsprechend strukturierte Arbeitsweise angewiesen. Diese unterstützen Tools wie Notion, denn sie erlauben eine Ablage aller möglichen Informationen in strukturierter Form. Außerdem können Sie damit beispielsweise Aufgaben auflisten und abarbeiten und beliebige andere Daten damit verwalten – in entsprechend kostenpflichtigen Versionen sogar im Team. Und es gibt noch einen wesentlichen Grund, darüber in diesem Magazin zu berichten: Wir können nämlich über die API auf die in Notion abgelegten Daten zugreifen und diese auch von einer Access-Datenbank aus befüllen. Doch dies soll Thema eines anderen Beitrags sein – hier schauen wir uns erst einmal die grundlegenden Funktionen von Notion an.

Weiterlesen

Kunden nach bestellten Produkten filtern

Kunden nach bestellten Produkten kann jeder filtern, der sich ein wenig mit dem Abfrageentwurf beschäftigt hat. Etwas aufwendiger ist es schon, ein Formular zu erstellen, dass verschiedene Möglichkeiten zum Filtern von Kunden nach den bestellten Produkten bietet. Hier wollen wir beispielsweise ein Produkt auswählen, sodass direkt alle Kunden in einer Liste angezeigt werden, die dieses Produkt bestellt haben. Oder wir gehen noch einen Schritt weiter und wollen Kunden anzeigen, die mindestens eines von mehreren Produkten geordert haben. Um dann vielleicht noch solche Kunden auszuschließen, die bereits ein bestimmtes anderes Produkt besitzen. Also auf ins Abenteuer!

Weiterlesen

Ribbontab beim Öffnen eines Formulars anzeigen

Sie kennen sicher die Ribbon-Tabs, die erscheinen, wenn Sie bestimmte Objekte in Access öffnen. Wenn Sie eine neue Tabelle anlegen, erscheint beispielsweise ein Tab namens “Tabellenentwurf”. Wechseln Sie zur Datenblattansicht der Tabelle, erscheinen die Tabs “Tabelle Felder” und “Tabelle”. Die Gemeinsamkeiten dieser Elemente sind, dass diese sich optisch ein wenig von den links davon befindlichen Tabs unterscheiden. Wie genau, hängt von der jeweils verwendeten Access-Version ab. In diesem Beitrag schauen wir uns an, wie wir überhaupt Ribbons mit einem Formular einblenden und dieses aktivieren und wie wir kontextabhängige Ribbons programmieren können.

Weiterlesen

Prüfen, ob Datenbank geöffnet ist

In einem früheren Beitrag haben wir mit einer Funktion geprüft, ob eine Datenbank geöffnet ist. Diese war jedoch nicht in jedem Fall zuverlässig – also liefern wir eine neue Version für eine solche Funktion. In dieser neuen Funktion versuchen wir, die Datenbank exklusiv zu öffnen. Das gelingt nur, wenn diese aktuell nicht geöffnet ist. Mehr dazu im vorliegenden Beitrag!

Weiterlesen

Dynamische Bereichshöhe im Endlosformular

Ein Leser stellt mir neulich die Frage, ob und wie man die Höhe der einzelnen Bereiche im Endlosformular dynamisch so einstellen kann, dass beispielsweise immer drei Datensätze angezeigt werden – auch, wenn der Benutzer die Höhe des Endlosformulars während der Anzeige ändert. Dieser Beitrag zeigt, wie das möglich ist. Dabei behelfen wir uns einer Ereignisprozedur, die immer beim Ändern der Größe eines Formulars ausgelöst wird – und eines kleinen Tricks, der wegen der enthaltenen Steuerelemente nötig wurde.

Weiterlesen

Dateien per VBA öffnen

Es gibt viele Gelegenheiten, zu denen man gern eine Datei per VBA öffnen möchte. Ein gutes Beispiel ist ein soeben auf Basis eines Berichts erstelltes PDF-Dokument. Doch der Standardumfang von VBA liefert keine Möglichkeit, diese Aufgabe zu erledigen. Und tatsächlich ist das Anzeigen einer Datei nicht trivial, zumindest dann nicht, wenn wir vorher noch nicht wissen, welchen Dateityp die Datei hat und mit welcher Anwendung diese geöffnet werden soll. Allerdings weiß Windows ja auch meistens, mit welcher Anwendung eine Datei geöffnet werden soll, wenn wir diese im Windows Explorer doppelt anklicken. Also muss es einen Weg geben, diese Aufgabe per Code zu erledigen. Und die Lösung ist eine API-Funktion namens ShellExecute.

Weiterlesen

Kontextabhängige tab-Elemente im Ribbon

Wenn Sie schon einmal benutzerdefinierte Ribbondefinitionen in einer Ihrer Anwendungen eingesetzt haben, kennen Sie vielleicht auch schon die kontextabhängigen Tabs, die man mit ein paar Extra-Elementen definiert und die gemeinsam mit dem jeweils zugeteilten Formular angezeigt werden. Die Besonderheit ist, dass diese kontextabhängigen tab-Elemente, auf Englisch Contextual Tabs, optisch etwas anders angezeigt werden und zusätzlich zu den aktuell angezeigten Ribbon-Tabs erscheinen. Es gibt jedoch nicht nur kontextabhängige Tabs für Formulare und Berichte, sondern auch noch weitere, die beispielsweise in der Entwurfsansicht verschiedener Elemente erscheinen oder in der Datenblattansicht. In diesem Beitrag schauen wir uns an, welche es gibt und wie wir diese Tabs selbst erweitern oder anpassen können.

Weiterlesen

Rechnungsverwaltung: Kundenübersicht mit Suche

Wenn der Kunde anruft, möchten Sie schnell den entsprechenden Kundendatensatz auf dem Bildschirm haben. Dazu stellen wir im vorliegenden Beitrag ein Formular samt Unterformular zusammen, mit denen die gewünschten Daten schnell ermittelt werden können. Im Hauptformular bieten wir einige Suchfunktionen an, im Unterformular liefern wir in die den Suchkriterien entsprechenden Daten in der Datenblattansicht. Außerdem soll das Formular die Möglichkeit bieten, den gefundenen Kundendatensatz im Detailformular zu öffnen, damit wir auch noch die Bestellungen des Kunden einsehen können.

Weiterlesen