Blog

MNIST-Ziffer

MNIST mit VBA einlesen und umformen

Befasst man sich mit der Entwicklung von künstlichen neuronalen Netzen, stolpert man unweigerlich über den MNIST-Datensatz. Dieser hat sich mittlerweile zu einem Quasi-Standard entwickelt, wenn es darum geht, die Erkennungsqualität von neuronalen Netzen zu bewerten, bzw. die Performance unterschiedlicher Netzen miteinander vergleichen zu können.

In diesem Tutorial gehe ich auf die Besonderheiten vom relativ sperrigen MNIST-Format ein und stelle eine Klasse vor, die den MNIST mit VBA ausliest und diesen mit einer einfach zu nutzenden Schnittstelle zur Verfügung stellt.

Continue reading „MNIST mit VBA einlesen und umformen“

Chemische Formeln mit VBA formatieren

Die Sprache VBA ist vielseitig einsetzbar (hat jemand wirklich eine andere Aussage auf einem VBA-Blog erwartet?) und erlaubt neben der klassischen Automatisierung von wiederkehrenden Abläufen, auch die Umsetzung von regelbasierten Formatierungen.

Continue reading „Chemische Formeln mit VBA formatieren“

Singleton mit VBA

Die Programmiersprache VBA wird zwar von Microsoft selbst als objektorientiert bezeichnet, unterstützt aber bei weitem nicht alle Aspekte der Objektorientierung. Das Singleton Pattern ist eines der wenigen Pattern, die sich in VBA umsetzen lassen. Dieser Beitrag soll den Praxiseinsatz des Singletonpatterns in meinem VBA-Projekt etwas näher erläutern.

Continue reading „Singleton mit VBA“

Camt 052 Dateien zur Zuordnung von Zahlungen einlesen

In meinem ersten Beitrag über das Thema Rechnungsstellung habe ich über Herausforderungen bei der Zuordnung von Zahlungen zu offenen Rechnungen berichtet. Der Lösungsansatz, den ich bereits umgesetzt habe, war die Verwendung von QR Codes auf Rechnungen, um bequemere Überweisungen für meine Kunden und fehlerfreie Zuordnungen für meine Buchhaltung zu ermöglichen. Nun möchte ich einen Blick hinter die Kulissen auf ein weiteres Modul gewähren, welches Kontoauszugsdateien im Camt 052-Format entgegennimmt, neue Zahlungseingänge ermittelt und diese ins Rechnungsprogramm für den Zahlungsabgleich importiert.

Continue reading „Camt 052 Dateien zur Zuordnung von Zahlungen einlesen“

Vergleich Performance C# vs VBA

In jedem Fachgebiet gibt es Fragestellungen, die von den in die Materie involvierten Personen sofort richtig beantwortet werden. Das Gebiet der Softwareentwicklung bildet da natürlich keine Ausnahme. Ich glaube, jedem Entwickler dürfte klar sein, dass zwischen VBA und C# (beide aus dem Hause Microsoft stammend) Welten liegen. Deswegen geht es in diesem Beitrag nicht um die Frage „Ist C# schneller als VBA?“, sondern vielmehr „Um welchen Faktor ist C# schneller als VBA?“

Continue reading „Vergleich Performance C# vs VBA“

QR Codes mit VBA und Google Chart API erstellen

Im Internet gibt es zahlreiche Webseiten, mit denen man QR-Codes erzeugen kann. Man tippt einfach die zu verschlüsselnde Zeichenkette ein und erhalt eine entsprechende Grafik mit dem QR-Code. Was ist jedoch, wenn man dies nicht per Hand, sondern maschinell erledigen möchte? Hierfür könnte die Google Chart API eine mögliche Lösung sein.

In diesem Tutorial stelle ich ein kleines, von mir entwickeltes, Programm vor und erkläre ausführlich, wie dieses funktioniert. Es ist in der Lage, Texte aus einem Array mit Hilfe der Google Chart API automatisch in QR Codes zu überführen. Mit einer kleinen Anpassung kann auch eine Exceltabelle als Quelle für die umzuwandelnden Texte angebunden werden, sodass die Textpflege noch einfacher wird.

Continue reading „QR Codes mit VBA und Google Chart API erstellen“

Richtiger Umgang mit ScreenUpdating

Viele Programme, welche mit großen Datenmengen herumhantieren und komplizierte Berechnungen anstellen, kommen oft an den Punkt, an dem deren lange Laufzeit allmählig zum Problem wird. VBA-Programme, die unter Excel laufen, sind da keine Ausnahmen. Eher die Regel – vor allem dann, wenn das Programm dauernd Inhalte in Zellen reinschreibt. Denn bei jedem solcher Schreibvorgänge gehen wertvolle Millisekunden für die Bildschirmaktualisierungen und automatische Berechnungen anderer Zellen drauf. Nebenbei erwähnt, führt dies auch zum unschönen Flackern des Bildschirms während des Programmlaufs. Stöbert man in zahlreichen Foren, begegnet man oft dem Vorschlag, die Bildschirmaktualisierung sowie automatische Zellenberechnungen vor dem Beginn der Verarbeitung auszuschalten und sie nach der Verarbeitung wieder zu aktivieren.

Wie so oft, steckt auch bei diesem wirklich wirkungsvollen Vorschlag der Teufel im Detail, welches der Gegenstand dieses Beitrags sein soll.

Continue reading „Richtiger Umgang mit ScreenUpdating“

Konsolenanwendungen mit VBA aufrufen

Fragt man Menschen mit unterschiedlichem Background (kaufmännisch vs. informationstechnisch), was sie von Konsolenanwendungen halten, so gibt es in der Regel vollkommen gegenläufige Meinungen. Auf der einen Seite kommen Aussagen wie „das ist ja doch total veraltet, ich möchte lieber eine schicke Bedienoberfläche haben“. Auf der anderen Seite lautet die Meinung „hey, die sind absolut genial, einfach bedienbar und wirklich aufs Wesentliche fokussiert.

Continue reading „Konsolenanwendungen mit VBA aufrufen“

Rückblick Selbstständigkeit – mein erstes Jahr

Vor über einem Jahr habe ich meine nebenberufliche Selbstständigkeit gestartet – ein guter Zeitpunkt für einen Rückblick auf die letzten 12 Monate. Ein Rückblick auf Dinge, die richtig klasse gelaufen, aber auch auf die, die voll in Hose gegangen sind.

Continue reading „Rückblick Selbstständigkeit – mein erstes Jahr“
Radsport als Ausgleich zur Programmierung und Selbstständigkeit

Radsport als Ausgleich zum Programmieren

Durch meine Tätigkeit als Softwareentwickler verbringe ich viel Zeit am Rechner. Mal ist es eher konzeptionelle Arbeit, um zum Beispiel eine sinnvolle Struktur einer neuen Anwendung aufzustellen. Mal ist es eine klassische Disziplin wie Kundenanforderungen in Sourcecode zu „gießen“. Ebenso die ganzen Randthemen, die bei der Selbstständigkeit anfallen, wie Arbeit an der Webseite, Kundenakquise oder Buchhaltung. Da brauche ich nicht zu erwähnen, dass da ein Ausgleich her muss. Auch wenn ich, wie fast jeder Softwareentwickler, auch das Programmieren zu meinen Hobbies zähle, meine ich eher Sport als Ausgleich 🙂

Continue reading „Radsport als Ausgleich zum Programmieren“