程式需自動產生 Word 文件、填入報表資料、套用格式,透過 OLE 自動化 (COM) 直接控制 Word.Application 物件模型。
uses ComObj, Variants;
procedure WriteToWord(const FileName, InsertText: string);
var
WordApp: Variant;
Doc: Variant;
begin
// 1. 建立/連接 Word 應用程式
WordApp := CreateOleObject('Word.Application');
try
// 2. 開啟現有文件 (ReadOnly:=False 可編輯)
Doc := WordApp.Documents.Open(FileName, False, False);
// 3. 可選:顯示 Word 視窗
WordApp.Visible := True;
// 4. 移動游標至文件開頭
Doc.Range(0, 0).Select;
// 5. 插入文字
WordApp.Selection.TypeText(InsertText);
// 6. 插入段落標記 (換行)
WordApp.Selection.TypeParagraph;
// 7. 設定字型
WordApp.Selection.Font.Name := 'Arial';
WordApp.Selection.Font.Size := 24;
WordApp.Selection.Font.Bold := True;
// 8. 儲存並關閉 (視需求)
// Doc.Save;
// Doc.Close(False);
// WordApp.Quit;
except
on E: Exception do
ShowMessage('Word 自動化失敗:' + E.Message);
end;
end;
WordApp.Documents.Open 回傳 Document 物件。Doc.Range(Start, End) 取得範圍物件;Selection 代表目前游標/選取區域。Selection.TypeText、TypeParagraph、Font 等方法/屬性即為 Word VBA 對應功能。Variant 進行晚期繫結,無需匯入型別庫,但失去編譯期檢查與 Code Insight。uses,即可使用 _Application、_Document、Range 等介面。WideString 給 COM。SetWindowsHookEx(WH_KEYBOARD_LL) 實戰
GDI+ 色彩旋轉變換:RGB 通道平面旋轉矩陣完整解析
Delphi.NET VCL.NET 整合 ADO.NET 與 BDP:ADONETConnector 元件實現資料感知控件綁定