Projekt VBA-Programmierung für Kunden-Reporting
Im folgenden möchte ich kurz über ein Projekt berichten, in dem mittels automatischer Datenübertragung in ein vom Kunden gewünschtes Formular die Arbeit vereinfacht und der Arbeitsaufwand reduziert werden konnte.
Vor dem Projekt wurden die Daten per Hand von Datei A in Datei B geschrieben. Das Unternehmen verwendet Excel dafür.
Die Quelldateien werden mit Hilfe eines Listgenerators einer Datenbank generiert. Die Datenbank erlaubt es noch nicht, die Daten sofort in das vom Kunden der Firma gewünschte Format zu schreiben. Obwohl das Einlesen der Quelldateien in Excel möglich ist, mussten die Daten manuell in das gewünschte Format übertragen werden.
Mir wurden Quelldateien im Textformat und eine leere Zieldatei im Excel-Format zur Verfügung gestellt.
Für das Makro (VBA-Programm) habe ich eine separate Exceldatei verwendet. Da die Positionen in Quell- und Zieldatei manchmal unterschiedlich benannt werden, habe ich in die Makrodatei noch eine Übersetzungsliste eingefügt. In dieser Übersetzungsliste können noch Divisoren angegeben werden. Das ist z.B. wichtig, wenn in der Textdatei der Wert mit Mehrwertsteuer angegeben wird, aber in der Zieldatei der Nettowert verlangt wird.
Das Programm (Makro) überträgt Schritt für Schritt alle Werte, indem es aus der Übersetzungsliste die Bezeichnung der Quelldatei und anschließend den Wert in der Quelldatei heraussucht. Ist keine Übersetzung notwendige, wird dieser Schritt übersprungen.
Die Quell- und Zieldateien müssen in der Makrodatei angegeben und die Zieldatei geöffnet werden.
Außerdem müssen sich Quelldateien im aktuellen Verzeichnis befinden. Wenn das Makro per Knopfdruck gestartet wird, werden die Quelldateien automatisch geöffnet und die Werte werden in die Zieldatei übertragen.
Ein Video zeigt hier nochmals, wie die Daten mit Hilfe des Makros automatisch in die Zieldateien übertragen werden.
Ich möchte mich für die Zusammenarbeit bei den Kollegen der Firma Integra herzlich bedanken. Aufgrund der guten Abstimmung beim Festlegen der Anforderungen an das Programm war es möglich, effiziente Lösungen mit geringem Aufwand und geringen Kosten für Integra zu erarbeiten.