[Eine Seite zurück] [Übersicht] [Eine Seite vor]

Benutzung auf eigene Gefahr !
Keine Garantie für garnichts !

Tabelle/Abfrage als HTML ausgeben.

Sprache / Programm: Access ab Version 97
Beschreibung

Gibt eine Tabelle oder Abfrage als HTML-Text aus. Weil die Funktion auch Abfragen bearbeitet, lassen sich beliebig konfigurierte Daten ausgeben.

VBA-Quelltext
' Schreibt eine Tabelle / Abfrage als HTML
Public Function TabInHTML(TabOderAbfrage As String, Optional MitKopfZeile As Boolean, Optional Titel, Optional TABLE As String, Optional TH As String, Optional TD As String) As String
    Dim TempTab As DAO.Recordset, LetzteSpalte  As Byte, SpalteNr As Byte

    Set TempTab = CurrentDb.OpenRecordset(TabOderAbfrage)
    LetzteSpalte = TempTab.Fields.Count - 1

'  Falls Tebellenüberschrift verwendet werden soll:
    Const CAPTION = vbNewLine & "
"
'  Falls Tebellenunterschrift verwendet werden soll:
'  Const CAPTION = "
"
   
''' Eingaben überprüfen und Vorgabewerte erstellen
    TabInHTML = IIf(TABLE = vbNullString, vbNewLine & "", TABLE)
   
    If TH = vbNullString Then TH = vbNewLine & ""
        For SpalteNr = 0 To LetzteSpalte
            TabInHTML = TabInHTML & TH & TempTab.Fields(SpalteNr).NAme & ""
        Next SpalteNr
        TabInHTML = TabInHTML & ""
    End If
   
''' Zeilen der Tabelle/Abfrage als HTML schreiben
    TempTab.MoveFirst
    Do Until TempTab.EOF
        TabInHTML = TabInHTML & ""
        For SpalteNr = 0 To LetzteSpalte
            TabInHTML = TabInHTML & TD & TempTab.Fields(SpalteNr).Value & ""
        Next SpalteNr
        TabInHTML = TabInHTML & ""
        TempTab.MoveNext
    Loop
    TempTab.Close
    TabInHTML = TabInHTML & "
"
    If TD = vbNullString Then TD = vbNewLine & "
"
   
    If IsMissing(Titel) Then
        TabInHTML = TabInHTML & CAPTION & TabOderAbfrage & "" & vbNewLine
    ElseIf Titel <> vbNullString Then
        TabInHTML = TabInHTML & CAPTION & Titel & "" & vbNewLine
    End If
   
''' Spaltenüberschriften ausgeben
    If MitKopfZeile Then
        TabInHTML = TabInHTML & "
"

End Function
Argumente der Funktion/Prozedur

Tabelle

Name einer Tabelle oder Abfrage als String.

MitTitel (Optional)

Falls nicht angegeben, wird der Name der Abfrage als Titel der Tabelle verwendet, sonst wird der übergebene String als Tabellenüberschrift verwendet.

MitKopfZeile (Optional)

Falls TRUE, werden auch die Spaltenüberschriften ausgegeben, bei FALSE oder wenn nicht angegeben werden die Spaltenüberschriften nicht in HTML übersetzt.

TABLE (Optional)

Wenn nichts angegeben wurde, verwendet das Programm standardmäßig das HTML-Tag '&lt;TABLE&gt;'. Statt dessen kann jedoch ein erweitertes TABLE-Tag eigegeben werden, z.B. '&lt;TABLE BORDER=3 CELLSPACING=5 CELLPADDING=22&gt;'. BORDER gibt die Breite des Rahmens an, CELLSPACING gibt die Breite des Rahmens an und CELLPADDING die Breite der Zelle.

TH (Optional)

Für die Angabe zusätzlicher Formatierungen der Spaltenüberschriften.

TD (Optional)

Für die Angabe zusätzlicher Zellenformatierungen, z.B. zentriert '&lt;TD ALIGN="CENTER"&gt;' den Zellinhalt.

Hinweis

Für eine vollständige HTML-Seite ist der Tabellentext noch zu ergänzen. Vor dem String, den die Funktion TabInHTML ausgibt, muß der Text '&lt;HTML&gt;&lt;BODY&gt;' eingefügt werden und danach der String '&lt;/BODY&gt;&lt;/HTML&gt;' angehängt werden.

Anwendungsgebiete, Fehler und Warnungen

Verwendet die DAO Objektbibliothek. Ab Access 2000 muss diese explizit im VBA-Editor über 'Extras' -> 'Verweise' als 'Microsoft DAO 3.6' (oder höher) eingebunden werden und vor die 'Microsoft ADO 2.1' (oder höher) Bibliothek gesetzt werden.