vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Word   |   VB-Versionen: VBA12.01.16
SQL-Daten in eine WORD-Tabelle eintragen (VBA, Word 2007, SQL)

Der Tipp stellt eine VBA-Modul-Datei zur Verfügung mit Funktionen, die das Übertragen von Daten aus einer SQL-Datenbank in eine Word-Tabelle realisieren.

Autor:   Dietrich HerrmannBewertung:  Views:  6.853 
ohne HomepageSystem:  Win7, Win8, Win10, Win11 Beispielprojekt 

Im Code des im Download enthaltenen Moduls sind am Anfang die erforderlichen Verweise angegeben, die für die Realisierung benötigt werden:

  • Microsoft ActiveX Data Objects 2.8 Library
  • Microsoft ActiveX Data Objects Recordset 6.0 Library

Eine UserForm wird nicht verwendet. Die erste Funktion 'tableFromSQL' ist die aufzurufende Funktion für den Ablauf der Datenübertragung.
Ich zeige hier die Parameter als ein Beispiel aus einer meiner Datenbanken und will damit nur darstellen, wie die entsprechenden Parameter aussehen können. Es ist in dieser Form vom Tipp-User nicht anwendbar, weil fiktiv!

In der Funktion wird zuerst insbesondere ein Array für die Formatierung der Daten in der Word-Tabelle erzeugt (also im Beispiel Buchungsdaten wie im Selection-String ersichtlich). Das Array 'prozent' legt für jede Spalte der Word-Tabelle ihre prozentualle Breite fest.

Dann folgt der Aufruf der Funktion 'SQLDataToWordTable' mit ihren Parametern. Diese Parameter werden vor der Funktionsdefinition erläutert.

Besonders ist der Parameter 'art':

  • 11.. new table: bedeutet, dass eine neue Wordtabelle an der aktuellen Cursorposition erzeugt und dann befüllt wird.
  • 12.. update table: bedeutet, dass eine schon vorhandene, gefüllte Word-Tabelle aktualisiert wird.
  • 21.. array: bedeutet, dass die SQL-daten nicht in eine Word-Tabelle übertragen werden, sondern 'nur' in ein Array.

In der Funktion ist der Code-Block für die Verwendung der Struktur einer Datentabelle auskommentiert, kann bei Bedarf benutzt werden.

Erwähnenswert sind noch die Fakten:

  • Es können auch RTF- und/oder Image-Datenfelder verarbeitet werden.
  • Die Funktion gibt die Anzahl der übertragenen Datensätze zurück.

Hinweis: Es wird die Funktion 'CreateTable' aus meinem Tipp  VBA-Funktionen #2 benötigt.



Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle Rechte vorbehalten.


Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.