//==================Word_VBA 代碼====================//
sub inWord()
Dim myTable As Table
Dim myBox, myPict, myShape As Shape
'畫第一個矩形框
Set myBox = ActiveDocument.Shapes.AddTextbox(Orientation:=1, Left:=90, Top:=70, Width:=414, Height:=200)
'畫一條垂直線
Set myLine = ActiveDocument.Shapes.AddLine(255, 70, 255, 270)
'畫第一幅圖
Set myPict = ActiveDocument.Shapes.AddPicture("D:/test/test/load_jpg1/photo/108259.jpg", _
LinkToFile:=False, SaveWithDocument:=True, Left:=180, Top:=80, Width:=65, Height:=80)
'畫第二幅圖
Set myPict = ActiveDocument.Shapes.AddPicture("D:/test/test/load_jpg1/photo/108259.jpg", _
LinkToFile:=False, SaveWithDocument:=True, Left:=262, Top:=80, Width:=65, Height:=80)
'姓名
Set myShape = ActiveDocument.Shapes.AddTextbox(Orientation:=1, Left:=108, Top:=198, Width:=126, Height:=18)
myShape.Line.Visible = msoFalse
myShape.TextFrame.TextRange.Text = "姓名:新之助"
'年齡
Set myShape = ActiveDocument.Shapes.AddTextbox(Orientation:=1, Left:=108, Top:=225, Width:=126, Height:=18)
myShape.Line.Visible = msoFalse
myShape.TextFrame.TextRange.Text = "年齡:12"
'個人資訊
Set myShape = ActiveDocument.Shapes.AddTextbox(Orientation:=1, Left:=351, Top:=90, Width:=126, Height:=99)
myShape.Line.Visible = msoFalse
myShape.TextFrame.TextRange.Text = "個人資訊"
'文字方塊中新增表格
Set myShape = ActiveDocument.Shapes.AddTextbox(Orientation:=1, Left:=288, Top:=198, Width:=189, Height:=63)
myShape.Line.Visible = msoFalse
Set myTable = ActiveDocument.Tables.Add(Range:=myShape.TextFrame.TextRange, NumRows:=3, NumColumns:= _
2, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:=wdAutoFitFixed)
myTable.Cell(1, 1).Range.Text = "體重"
myTable.Cell(1, 2).Range.Text = "40kg"
myTable.Cell(2, 1).Range.Text = "身高"
myTable.Cell(2, 2).Range.Text = "120cm"
myTable.Cell(3, 1).Range.Text = "坐高"
myTable.Cell(3, 2).Range.Text = "65cm"
end sub
//==================Delphi程式碼====================//
PRocedure inDelphi;
var
WordApp,WordDoc,WordTable,wordShape:OleVariant; // se:Selection;
filename:string;
begin
SaveDialog1.InitialDir:=ExtractFilePath(application.ExeName)+'out_file';
SaveDialog1.Execute;
self.Refresh;
filename:=savedialog1.FileName;
if length(filename)=0 then
begin
application.MessageBox(' 沒有選擇統計檔案的儲存位置,不能儲存統計的資料! ','提示方塊',mb_ok);
exit;
end;
WordApp:=CreateOleObject('Word.Application');
WordApp.Visible:=True;
WordDoc:=WordApp.Documents.Add;
try
//畫第一個矩形框
worddoc.SHAPES.AddTextbox(Orientation:=1, Left:=90, Top:=70, Width:=414, Height:=200);
//畫一條垂直線
worddoc.Shapes.AddLine(255, 70, 255,270);
//畫第一幅圖
worddoc.SHAPES.addpicture(ExtractFilePath(Application.ExeName)+'photo/108259.jpg',
LinkToFile:=False, SaveWithDocument:=True, Left:=180, Top:=80, Width:=65, Height:=80);
//畫第二幅圖
worddoc.SHAPES.addpicture(ExtractFilePath(Application.ExeName)+'photo/108259.jpg',
LinkToFile:=False, SaveWithDocument:=True, Left:=262, Top:=80, Width:=65, Height:=80);
//畫姓名框
wordShape:=worddoc.Shapes.AddTextbox(Orientation:=1, Left:=108, Top:=198, Width:=126, Height:=18);
wordShape.Line.Visible := false;
wordShape.TextFrame.TextRange.Text := '姓名:新之助';
//年齡框
wordShape:=worddoc.Shapes.AddTextbox(Orientation:=1, Left:=108, Top:=225, Width:=126, Height:=18);//.Select;
wordShape.Line.Visible := false;
wordShape.TextFrame.TextRange.Text := '年齡:12';
//個人資訊框
wordShape:=worddoc.Shapes.AddTextbox(Orientation:=1, Left:=351, Top:=90, Width:=126, Height:=99);//.Select;
wordShape.Line.Visible := false;
wordShape.TextFrame.TextRange.Text := '個人資訊';
//文字方塊中新增表格
wordShape:=worddoc.Shapes.AddTextbox(Orientation:=1, Left:=288, Top:=198, Width:=189, Height:=63);//.Select;
wordShape.Line.Visible := false;
WordTable := worddoc.Tables.Add(Range:=wordShape.TextFrame.TextRange, NumRows:=3, NumColumns:=2,
DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:=wdAutoFitFixed);
WordTable.Cell(1, 1).Range.Text := '體重';
WordTable.Cell(1, 2).Range.Text := '40kg';
WordTable.Cell(2, 1).Range.Text := '身高';
WordTable.Cell(2, 2).Range.Text := '120cm';
WordTable.Cell(3, 1).Range.Text := '坐高';
WordTable.Cell(3, 2).Range.Text := '65cm';
WordDoc.saveas(filename);
application.MessageBox(' 輸出成功! ','提示框',mb_ok);
finally
WordDoc.Saved:=true;
WordDoc.Close;
WordApp.Quit;
end;
end;