Contributor: SWAG SUPPORT TEAM
{
This answer involves opening an existing Word file that has a bookmark already saved. This code will select and replace the text at the bookmark with our own text, and then it will print.
Note: The ExecuteMacro() commands are separated into different buttons because of a timing issue. If you want everything to work from the same procedure, change the TRUE to FALSE.
}
unit Unit1;
interface
uses
 SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
 Forms, Dialogs, DdeMan, StdCtrls;
type
 TForm1 = class(TForm)
 Button1: TButton;
 DCC: TDdeClientConv;
 Button2: TButton;
 Button3: TButton;
 Button4: TButton;
 procedure Button1Click(Sender: TObject);
 procedure Button2Click(Sender: TObject);
 procedure Button3Click(Sender: TObject);
 procedure Button4Click(Sender: TObject);
 private
 { Private declarations }
 public
 { Public declarations }
 end;
var
 Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
 P: PChar;
begin
 WinExec('e:\winapps\winword\winword.exe', sw_ShowNormal);
 with DCC do begin
 SetLink('winword', '');
 if not OpenLink then
 ShowMessage('Link not established')
 else
 ExecuteMacro('[FileOpen("c:\temp\foobar.doc")]', True);
 end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
 DCC.ExecuteMacro('[EditGoTo("TheBookmarkName")]', True);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
 DCC.ExecuteMacro('[Insert("This is the new text that is inserted.")]', True);
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
 DCC.ExecuteMacro('[FilePrint]', True);
end;
end.
{****************************************************}
object Form1: TForm1
 Left = 202
 Top = 102
 Width = 403
 Height = 89
 Caption = 'Form1'
 Font.Color = clWindowText
 Font.Height = -13
 Font.Name = 'System'
 Font.Style = []
 PixelsPerInch = 96
 TextHeight = 16
 object Button1: TButton
 Left = 8
 Top = 16
 Width = 89
 Height = 33
 Caption = 'Open'
 TabOrder = 0
 OnClick = Button1Click
 end
 object Button2: TButton
 Left = 104
 Top = 16
 Width = 89
 Height = 33
 Caption = 'Find Bkmk'
 TabOrder = 1
 OnClick = Button2Click
 end
 object Button3: TButton
 Left = 200
 Top = 16
 Width = 89
 Height = 33
 Caption = 'Replace'
 TabOrder = 2
 OnClick = Button3Click
 end
 object Button4: TButton
 Left = 296
 Top = 16
 Width = 89
 Height = 33
 Caption = 'Print'
 TabOrder = 3
 OnClick = Button4Click
 end
 object DCC: TDdeClientConv
 ConnectMode = ddeManual
 end
end


AltStyle によって変換されたページ (->オリジナル) /