Ich habe hier ein Script, das mir eine MS-Word Tabellenliste aus ausgewählten Dokumenten einer Ansicht macht. Nun möchte ich aber zusätzlich aus dem ersten Dokument der Liste quasi als Überschrift der Tabelle die Inhalte von zwei Feldern vor die eigentliche Tabelle bekommen.
Da ich mit so komplexen Scripten mien Probleme habe, freue ich mich über jede Hilfe
Hier der erste Teil des Scriptes:
| Sub Initialize |
| |
| |
| Dim session As New NotesSession |
| Dim db As NotesDatabase |
| Dim collection As NotesDocumentcollection |
| Dim i As Integer |
| Dim Vorlagenpfad As String |
| Dim AnsichtZeile() As Variant |
| Dim Zeile As String |
| Dim Spalte As String |
| Dim Einsender As String |
| Dim PersNr As String |
| Dim Betrag As Variant |
| |
| |
| Set db = session.CurrentDatabase |
| |
| Set collection = db.UnprocessedDocuments |
| If collection.count > 0 Then |
| |
| 'Pfad zu Word-Dokumentvorlagen bestimmen |
| 'Erstellung eines Word97-Objektes zur Bestimmung des Vorlagenpfads |
| Dim WordApp As Variant |
| Set WordApp = CreateObject("Word.Application.8") |
| Vorlagenpfad = WordApp.Options.DefaultFilePath(2) |
| 'Beenden von Word ohne weitere Abfragen |
| Dim SaveOptions As Variant |
| SaveOptions = 0 |
| WordApp.Application.Quit SaveOptions |
| 'Objektvariablen löschen |
| Set WordApp = Nothing |
| |
| ' Word Dokumentenvorlage über API32 Dialog ermitteln |
| Dim DocVorlage As String |
| DocVorlage = FileOpenDialog(Vorlagenpfad, "", "Microsoft Word Dokumentvorlage|*.dot", "dot", "Dokumentvorlage auswählen:") |
| If DocVorlage = "{%Err%}" Then |
| Exit Sub |
| End If |
| |
| |
| 'Word-Objekt auf Basis der Dokumentvorlage erstellen |
| |
| 'Erstellung eines Word-Objektes |
| Set WordApp = CreateObject("Word.application") |
| |
| 'Word nicht sichtbar im Hintergrund |
| ' WordApp.Visible = False |
| WordApp.Visible = True |
| |
| 'Neue Worddatei öffnen |
| WordApp.Documents.Add(DocVorlage) |
Hier sollte nach meiner Erkenntnis nun der Aufruf zum Auslesen der beiden Feldinhalte kommen, denn danach geht es weiter mit der Tabelle:
| For i = 1 To collection.Count |
| Set doc = collection.GetNthDocument( i ) |
| |
| Set WordRange = Tabelle.Rows(i).Cells(1).Range |
| WordRange.InsertAfter Cstr(doc.Name(0))+", "+doc.Vorname(0)+Chr$(13) |
| |
| |
| |
| Set NeueZeile = Tabelle.Rows.Add() |
| Next |
| |
| |
| |
| |
| |
| |
| |
| |
| WordApp.ActiveDocument.Save |
| |
| |
| Else |
| Messagebox "Es sind keine Einträge selektiert!" |
| End If |
| |
| Exit Sub |
| |
| DateiNichtVorhanden: |
| Msgbox "Die Dokumentvorlage wurde nicht in ihrem Dokumentvorlagenverzeichnis gefunden! Die Aktion wird abgebrochen!" |
| Exit Sub |
| End Sub |