Announcement

Collapse
No announcement yet.

Seriendruckfunktion von Word

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Seriendruckfunktion von Word

    Kann mir jemand Helfen,
    Weiß jemand wie ich das anstelle über die Seriendruckfunktion von Word. Wenn ich eine Vorlage von einer Seite habe und diese dann duplizieren möchte. Wäre dankbar für einen Quellcode. Oder Sonstige Lösungsversuche.

    Danke an alle.

    David Wenzlow

  • #2
    Hallo,

    auf der CDROM zu meinem Buch <i>COM/DCOM/COM+ mit Delphi</i> ist im Verzeichnis <i>Kapitel 12\Office2000\MailMerge</i> ein Beispielprojekt für den Aufruf der Seriendruckfunktion aus Delphi 5 heraus zu finden.
    <pre>
    { ************************************************** **************
    Typ : Hauptformular
    Autor : Andreas Kosch
    Compiler : Delphi 5 Enterprise
    Betriebssystem : Windows 98
    Begonnen am : 21.12.1999
    Beschreibung : MailMerge-Objekt von Word 2000.
    Es ist notwendig, die Wrapper-Komponenten
    für Word 2000 neu zu erzeugen, die Delphi5-
    Package dclaxserver60.bpl muss dazu deaktivert
    werden, damit die Klassennamen eindeutig sind.
    ************************************************** ************** }

    unit MailMergeFrm;

    interface

    uses
    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
    StdCtrls, Word_TLB, OleServer, ComCtrls;

    type
    TForm1 = class(TForm)
    StatusBar1: TStatusBar;
    WordApplication1: TWordApplication;
    WordDocument1: TWordDocument;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    private
    { Private-Deklarationen }
    public
    { Public-Deklarationen }
    end;

    var
    Form1: TForm1;

    implementation

    {$R *.DFM}

    { CSV-Datei ist als Datenquelle mit dem Dokument fest verbunden }

    procedure TForm1.Button1Click(Sender: TObject);
    var
    vFileName : OleVariant;
    aMailMerge : MailMerge;
    vPause : OleVariant;
    vSave : OleVariant;
    begin
    vFileName := 'C:\Temp\Out\MailMerge\Serienbrief.doc';
    WordApplication1.Connect;
    WordApplication1.Documents.OpenOld(vFileName, EmptyParam, EmptyParam,
    EmptyParam, EmptyParam, EmptyParam,
    EmptyParam, EmptyParam, EmptyParam,
    EmptyParam);
    WordDocument1.ConnectTo(WordApplication1.ActiveDoc ument);
    WordApplication1.Visible := True;
    vPause := True;
    aMailMerge := WordDocument1.MailMerge;
    aMailMerge.Destination := wdSendToNewDocument;
    aMailMerge.Execute(vPause);
    ShowMessage('Fertig');
    vSave := False;
    WordApplication1.Documents.Close(vSave, EmptyParam, EmptyParam);
    WordDocument1.Disconnect;
    WordApplication1.Disconnect;
    end;

    end.
    </pre>
    Die Beschreibung dazu ist im Buch ab der Seite 506 zu finden

    Comment


    • #3
      Hallo Andreas!

      Ich beschäftige mich gerade ebenfalls mit diesem Thema, ist auch
      soweit i. o. . Aber du haßt in deinem Buch leider nur geschrieben,
      das es einfach wäre einen CSV-File aus Delphi zu erstellen, nicht
      aber wie es geht. Hab mich da glaube ich verannt.
      Ich arbeite mit Delphi 5 u. IB 6.01.
      Hast Du dazu eventl. ein Beispiel?

      danke!!!

      jürge

      Comment


      • #4
        Hallo,

        eine CSV-Datei ist eine schlichte ASCII-Datei, bei der jeder Datensatz in eine Zeile geschrieben wird. Am einfachsten geht der Export aus Excel - dieses "Muster" der von Word erwarteten Feldtrenner muss man dann mit Delphi nur nachbauen

        Comment

        Working...
        X