Excel UDF-Framework für benutzerdefinierte Funktionen

NEU: SYMPLASSON Excel-UDF-Framework

Unternehmen | Posted by SYMPLASSON | 28 Mai 2018
Excel UDF-Framework für benutzerdefinierte Funktionen

Mit dem SYMPLASSON Excel-UDF-Framework (UDF = User-Defined-Function) können Sie ganz einfach benutzerdefinierte Funktionen mit und ohne Zugriff auf Datenbanken bereitstellen und das Layout Ihrer Tabelle mit den Inhalten aus der Datenbank frei gestalten. Statische Reports, wie Sie sie kennen, gehören dann der Vergangenheit an.

 

Die Vorteile des SYMPLASSON Excel-Frameworks:

  • Komfortable Bereitstellung unternehmensspezifischer Excel-Funktionen mit Excel-integrierten Hilfstexten für die Anwender
     
  • Umfangreiche Unterstützung für Funktionen mit direktem SQL-Datenbankzugriff
    Im Gegensatz zu bisherigen Reports behält der Anwender die Möglichkeit, das Layout eines Tabellenblattes mit Inhalten aus Datenbanken weiterhin frei gestalten zu können („freedom of layout“)
     
  • Einfaches Deployment zu den Excel-Anwendern: Die Realisierung erfolgt als Excel Add-In, welches lediglich in den Excel-Autostart-Ordner kopiert werden muss

 

Features:

  1. Einfache Bereitstellung von benutzerdefinierten Funktionen mit und ohne Zugriff auf externe Datenbanken.

  2. Komfortable Registrierung der Hilfstexte zu den jeweiligen Funktionen durch eine eigene Registrierungs-Prozedur („RegisterFunctions“):

    Die für den Anwender wichtige Beschreibung der jeweiligen Funktion und der einzelnen Argumente wird direkt aus dem Funktions-Header mit der Funktions- und Parameterbeschreibung (Inline-Dokumentation) gebildet. Für den Entwickler ist somit keine doppelte Erfassung bzw. Pflege der Texte für die Funktionshilfe notwendig.

    Beispiel:

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung

         Darstellung der Hilfstexte in Excel nach Aufruf der Registrierungsprozedur:

 Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung
 

  1. Die benutzerdefinierten Funktionen sind zum leichteren Auffinden einer eigenen Kategorie zugeordnet (hier: SYMPLASSON):

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung

  1. Datenbank-Funktionen: 

    Die Verwendung von Datenbank-Funktionen ermöglicht den direkten Zugriff auf Daten aus SQL-Datenbanken. Die Spalten, deren Reihenfolge etc. können vom Anwender frei definiert werden -die sonst notwendige Anpassung von Reports entfällt. Durch die Verwendung mehrerer Datenbank-Funktionen können Tabellenblätter als „Dashboards“ gestaltet werden, das Übertragen von Daten aus unterschiedlichen Reports entfällt.
     
  2. Datenbank-Funktionen: Unterstützte Arten von Rückgabewerten:
     
    1. Einzelner Wert, z.B. der Umsatz eines Mitarbeiters in einem bestimmten Zeitraum (Skalar)
    2. Reihe von Werten, z.B. Arbeitstage, Urlaubstage und Krankheitstage eines Mitarbeiters in einem bestimmten Zeitraum (Zeilen oder Spaltenvektor Þ ein Datensatz mit mehreren Feldern)
    3. Bereich von Werten, z.B. eine Monats-Auswertung (Matrix Þ mehrere Datensätze mit mehreren Feldern).
       
  3. Datenbank-Funktionen: Spalten-/Feldauswahl:

    Es ist optional möglich, anzugeben welche Datenbank-Felder an das Excel-Tabellenblatt zurückgegeben werden. Die Angabe der benötigten Felder kann als Zelle, Zellbereich oder direkt als Feldname erfolgen – auch Kombinationen dieser Varianten sind möglich. Die Anzahl der Parameter für die Spalten ist nicht begrenzt, es können also beliebig viele Spaltenangaben erfolgen. Wenn keine explizite Spaltenauswahl erfolgt werden alle Datenbank-Felder an das Tabellenblatt zurückgegeben.

    Grundsätzlich wird überprüft, ob die angegebenen Feldnamen in dem SQL-Abfrageergebnis enthalten sind:

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung

 

  1. Datenbank-Funktionen: Spalten-/Feldreihenfolge:

    Durch die Angabe der benötigten Felder wird auch die Feldreihenfolge festgelegt und kann damit leicht geändert werden – insbesondere wenn die Angabe der Feldnamen z.B. in einer Kopfzeile über dem eigentlichen Datenbereich erfolgt genügt ein einfaches Umbenennen der Spaltenüberschriften.
    Auch die mehrfache Ausgabe von Spalten zur Verbesserung der Lesbarkeit einer breiteren Auswertung ist damit einfach möglich, z.B. die Ausgabe einer Spalte „Artikelnummer“ einmal ganz links und zusätzlich ganz rechts auf einer Auswertung.

    Felder mit SQL-Datentypen, die für Excel problematisch sind (z.B. Timestamp), werden automatisch herausgefiltert.

     
  2. Datenbank-Funktionen: Automatische Überprüfung der Abmessungen des Datenbereiches:

    Beim Ausführen einer Datenbank-Funktion wird automatisch überprüft, ob der selektierte Ziel-Datenbereich auf dem Tabellenblatt genügend Zeilen und Spalten für die zurückgelieferte Datenmenge umfasst.

    Es gibt ggfs. Hinweismeldungen, dass mehr Zeilen oder Spalten zurückgegeben wurden, als der Ziel-Datenbereich umfasst:

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung 

            Der Anwender erhält somit die Möglichkeit, den Ziel-Datenbereich oder die Auswertungskriterien
            entsprechend anpassen zu können.
 

  1. Datenbank-Funktionen: Verbindung und Datenaufbereitung:

    Das Herstellen der Verbindung zum SQL-Server sowie die Aufbereitung und Prüfung des Abfrageergebnisses zur Übergabe an das Excel-Tabellenblatt ist einer eigenen VBA-Klasse gekapselt. Der Code für eine Datenbank-Funktion ist daher sehr kompakt und übersichtlich.

    Beispiel für eine flexible Query-Funktion:

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung

  1. Datenbank-Funktionen: Flexible SQL-Abfrage / Entwickler-Funktionen:

    Mithilfe der Funktion „SYMxQuery“ können frei definierbare SQL-Abfragen ausgeführt werden. Dieses ermöglicht die Erstellung von Auswertungen, ohne dafür eine eigene benutzerdefinierte Funktion erstellen zu müssen. Das für die Auswertung via „SYMxQuery“ notwendige SQL-Statement könnte z.B. auf einem ausgeblendeten Tabellenblatt hinterlegt werden, um es vor dem End-Anwender zu verbergen. Die Möglichkeiten bzgl. Spaltenauswahl-/Reihenfolge sind identisch zu dem oben beschriebenen.

    Um die Erstellung freier SQL-Abfragen via „SYMxQuery“ zu vereinfachen, gibt es weitere Funktionen, die Informationen zu vorhandenen Tabellen, Views und Feldern einer Datenbank liefern (SYMxTableInfo, SYMxViewInfo, SYMxColumnInfo).

 

Freie SQL-Abfrage via „SYMxQuery“

Um die Erstellung der SQL-Anweisung zu vereinfachen, können Namen von Tabellen, Views und Feldern aus der verwendeten Datenbank mit Hilfe der Funktionen „SYMxTableInfo“ und „SYMxColumnInfo“ ermittelt werden:

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung


Anwendung von SYMxQuery:

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung

Excel, UDF-Framework, benutzerdefinierte, Funktionen, SQL, Abfrage, Layout, Entwickler, xQuery, Tabellen, Reports, Anwendung

 


Sie wollen mehr über das SYMPLASSON Excel-UDF-Framework wissen?

Kontaktieren Sie mich gerne:

Alexander Rubinstein

Alexander Rubinstein

Telefon: +49 40 533071-19

Kontakt Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!