Delphi控制Excel2000操作全集 |
|
wnhoo
高階會員 發表:75 回覆:443 積分:198 註冊:2003-04-22 發送簡訊給我 |
Delphi控制Excel2000 希望這分資料,為論壇中的各位會員關於EXCEL操作的問題提供一些幫助。
同時也希望各位能將自己整理的、或已有的資料共享出來。
這樣可以減少大家的「重複勞動」嗎?
技術在於交流,經驗在於積累!!!!
一.使用動態創建的方法
首先創建 Excel 對象,使用ComObj:
var ExcelApp: Variant;
ExcelApp := CreateOleObject( 'Excel.Application' ); 1) 顯示當前窗口:
ExcelApp.Visible := True; 2) 更改 Excel 標題欄:
ExcelApp.Caption := '應用程序調用 Microsoft Excel'; 3) 添加新工作簿:
ExcelApp.WorkBooks.Add; 4) 打開已存在的工作簿:
ExcelApp.WorkBooks.Open( 'C:\Excel\Demo.xls' ); 5) 設置第2個工作表為活動工作表:
ExcelApp.WorkSheets[2].Activate;
或
ExcelApp.WorksSheets[ 'Sheet2' ].Activate; 6) 給單元格賦值:
ExcelApp.Cells[1,4].Value := '第一行第四列'; 7) 設置指定列的寬度(單位:字符個數),以第一列為例:
ExcelApp.ActiveSheet.Columns[1].ColumnsWidth := 5; 8) 設置指定行的高度(單位:磅)(1磅=0.035厘米),以第二行為例:
ExcelApp.ActiveSheet.Rows[2].RowHeight := 1/0.035; // 1厘米 9) 在第8行之前插入分頁符:
ExcelApp.WorkSheets[1].Rows[8].PageBreak := 1; 10) 在第8列之前刪除分頁符:
ExcelApp.ActiveSheet.Columns[4].PageBreak := 0; 11) 指定邊框線寬度:
ExcelApp.ActiveSheet.Range[ 'B3:D4' ].Borders[2].Weight := 3;
1-左 2-右 3-頂 4-底 5-斜( \ ) 6-斜( / ) 12) 清除第一行第四列單元格公式:
ExcelApp.ActiveSheet.Cells[1,4].ClearContents; 13) 設置第一行字體屬性:
ExcelApp.ActiveSheet.Rows[1].Font.Name := '隸書';
ExcelApp.ActiveSheet.Rows[1].Font.Color := clBlue;
ExcelApp.ActiveSheet.Rows[1].Font.Bold := True;
ExcelApp.ActiveSheet.Rows[1].Font.UnderLine := True; 14) 進行頁面設置: a.頁眉:
ExcelApp.ActiveSheet.PageSetup.CenterHeader := '報表演示';
b.頁腳:
ExcelApp.ActiveSheet.PageSetup.CenterFooter := '第&P頁';
c.頁眉到頂端邊距2cm:
ExcelApp.ActiveSheet.PageSetup.HeaderMargin := 2/0.035;
d.頁腳到底端邊距3cm:
ExcelApp.ActiveSheet.PageSetup.HeaderMargin := 3/0.035;
e.頂邊距2cm:
ExcelApp.ActiveSheet.PageSetup.TopMargin := 2/0.035;
f.底邊距2cm:
ExcelApp.ActiveSheet.PageSetup.BottomMargin := 2/0.035;
g.左邊距2cm:
ExcelApp.ActiveSheet.PageSetup.LeftMargin := 2/0.035;
h.右邊距2cm:
ExcelApp.ActiveSheet.PageSetup.RightMargin := 2/0.035;
i.頁面水平居中:
ExcelApp.ActiveSheet.PageSetup.CenterHorizontally := 2/0.035;
j.頁面垂直居中:
ExcelApp.ActiveSheet.PageSetup.CenterVertically := 2/0.035;
k.打印單元格網線:
ExcelApp.ActiveSheet.PageSetup.PrintGridLines := True; 15) 拷貝操作: a.拷貝整個工作表:
ExcelApp.ActiveSheet.Used.Range.Copy;
b.拷貝指定區域:
ExcelApp.ActiveSheet.Range[ 'A1:E2' ].Copy;
c.從A1位置開始粘貼:
ExcelApp.ActiveSheet.Range.[ 'A1' ].PasteSpecial;
d.從文件尾部開始粘貼:
ExcelApp.ActiveSheet.Range.PasteSpecial; 16) 插入一行或一列:
a. ExcelApp.ActiveSheet.Rows[2].Insert;
b. ExcelApp.ActiveSheet.Columns[1].Insert; 17) 刪除一行或一列:
a. ExcelApp.ActiveSheet.Rows[2].Delete;
b. ExcelApp.ActiveSheet.Columns[1].Delete; 18) 打印預覽工作表:
ExcelApp.ActiveSheet.PrintPreview; 19) 打印輸出工作表:
ExcelApp.ActiveSheet.PrintOut; 20) 工作表保存:
if not ExcelApp.ActiveWorkBook.Saved then
ExcelApp.ActiveSheet.PrintPreview; 21) 工作表另存為:
ExcelApp.SaveAs( 'C:\Excel\Demo1.xls' ); 22) 放棄存盤:
ExcelApp.ActiveWorkBook.Saved := True; 23) 關閉工作簿:
ExcelApp.WorkBooks.Close; 24) 退出 Excel:
ExcelApp.Quit; 二.使用Delphi 控件方法 在Form中分別放入ExcelApplication, ExcelWorkbook和ExcelWorksheet。 1) 打開Excel
ExcelApplication1.Connect; 2) 顯示當前窗口:
ExcelApplication1.Visible[0]:=True; 3) 更改 Excel 標題欄:
ExcelApplication1.Caption := '應用程序調用 Microsoft Excel'; 4) 添加新工作簿:
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Add(EmptyParam,0));
5) 添加新工作表:
var Temp_Worksheet: _WorkSheet;
begin
Temp_Worksheet:=ExcelWorkbook1.
WorkSheets.Add(EmptyParam,EmptyParam,EmptyParam,EmptyParam,0) as _WorkSheet;
ExcelWorkSheet1.ConnectTo(Temp_WorkSheet);
End;
6) 打開已存在的工作簿:
ExcelApplication1.Workbooks.Open (c:\a.xls
EmptyParam,EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,0) 7) 設置第2個工作表為活動工作表:
ExcelApplication1.WorkSheets[2].Activate; 或
ExcelApplication1.WorksSheets[ 'Sheet2' ].Activate; 8) 給單元格賦值:
ExcelApplication1.Cells[1,4].Value := '第一行第四列'; 9) 設置指定列的寬度(單位:字符個數),以第一列為例:
ExcelApplication1.ActiveSheet.Columns[1].ColumnsWidth := 5; 10) 設置指定行的高度(單位:磅)(1磅=0.035厘米),以第二行為例:
ExcelApplication1.ActiveSheet.Rows[2].RowHeight := 1/0.035; // 1厘米 11) 在第8行之前插入分頁符:
ExcelApplication1.WorkSheets[1].Rows[8].PageBreak := 1; 12) 在第8列之前刪除分頁符:
ExcelApplication1.ActiveSheet.Columns[4].PageBreak := 0; 13) 指定邊框線寬度:
ExcelApplication1.ActiveSheet.Range[ 'B3:D4' ].Borders[2].Weight := 3;
1-左 2-右 3-頂 4-底 5-斜( \ ) 6-斜( / ) 14) 清除第一行第四列單元格公式:
ExcelApplication1.ActiveSheet.Cells[1,4].ClearContents; 15) 設置第一行字體屬性:
ExcelApplication1.ActiveSheet.Rows[1].Font.Name := '隸書';
ExcelApplication1.ActiveSheet.Rows[1].Font.Color := clBlue;
ExcelApplication1.ActiveSheet.Rows[1].Font.Bold := True;
ExcelApplication1.ActiveSheet.Rows[1].Font.UnderLine := True; 16) 進行頁面設置:
a.頁眉:
ExcelApplication1.ActiveSheet.PageSetup.CenterHeader := '報表演示';
b.頁腳:
ExcelApplication1.ActiveSheet.PageSetup.CenterFooter := '第&P頁';
c.頁眉到頂端邊距2cm:
ExcelApplication1.ActiveSheet.PageSetup.HeaderMargin := 2/0.035;
d.頁腳到底端邊距3cm:
ExcelApplication1.ActiveSheet.PageSetup.HeaderMargin := 3/0.035;
e.頂邊距2cm:
ExcelApplication1.ActiveSheet.PageSetup.TopMargin := 2/0.035;
f.底邊距2cm:
ExcelApplication1.ActiveSheet.PageSetup.BottomMargin := 2/0.035;
g.左邊距2cm:
ExcelApplication1.ActiveSheet.PageSetup.LeftMargin := 2/0.035;
h.右邊距2cm:
ExcelApplication1.ActiveSheet.PageSetup.RightMargin := 2/0.035;
i.頁面水平居中:
ExcelApplication1.ActiveSheet.PageSetup.CenterHorizontally := 2/0.035;
j.頁面垂直居中:
ExcelApplication1.ActiveSheet.PageSetup.CenterVertically := 2/0.035;
k.打印單元格網線:
ExcelApplication1.ActiveSheet.PageSetup.PrintGridLines := True; 17) 拷貝操作: a.拷貝整個工作表:
ExcelApplication1.ActiveSheet.Used.Range.Copy; b.拷貝指定區域:
ExcelApplication1.ActiveSheet.Range[ 'A1:E2' ].Copy; c.從A1位置開始粘貼:
ExcelApplication1.ActiveSheet.Range.[ 'A1' ].PasteSpecial; d.從文件尾部開始粘貼:
ExcelApplication1.ActiveSheet.Range.PasteSpecial; 18) 插入一行或一列:
a. ExcelApplication1.ActiveSheet.Rows[2].Insert;
b. ExcelApplication1.ActiveSheet.Columns[1].Insert; 19) 刪除一行或一列:
a. ExcelApplication1.ActiveSheet.Rows[2].Delete;
b. ExcelApplication1.ActiveSheet.Columns[1].Delete; 20) 打印預覽工作表:
ExcelApplication1.ActiveSheet.PrintPreview; 21) 打印輸出工作表:
ExcelApplication1.ActiveSheet.PrintOut; 22) 工作表保存:
if not ExcelApplication1.ActiveWorkBook.Saved then
ExcelApplication1.ActiveSheet.PrintPreview; 23) 工作表另存為:
ExcelApplication1.SaveAs( 'C:\Excel\Demo1.xls' ); 24) 放棄存盤:
ExcelApplication1.ActiveWorkBook.Saved := True; 25) 關閉工作簿:
ExcelApplication1.WorkBooks.Close; 26) 退出 Excel:
ExcelApplication1.Quit;
ExcelApplication1.Disconnect; 三.使用Delphi控制Excle二維圖 在Form中分別放入ExcelApplication, ExcelWorkbook和ExcelWorksheet
var asheet1,achart, range:variant; 1)選擇當第一個工作薄第一個工作表
asheet1:=ExcelApplication1.Workbooks[1].Worksheets[1]; 2)增加一個二維圖
achart:=asheet1.chartobjects.add(100,100,200,200); 3)選擇二維圖的形態
achart.chart.charttype:=4; 4)給二維圖賦值
series:=achart.chart.seriescollection;
range:=sheet1!r2c3:r3c9;
series.add(range,true);
5)加上二維圖的標題
achart.Chart.HasTitle:=True;
achart.Chart.ChartTitle.Characters.Text:=』 Excle二維圖』 6) 我是這樣寫的:
var i,j:integer;
ii:string;
begin ExcelApplication1.Visible[0]:=True;
ExcelApplication1.Caption:='Excel Application';
try
ExcelApplication1.Workbooks.Open(ExtractFilePath(paramstr(0)) '文件名.xls',
null,null,null,null,null,null,null,null,null,null,null,null,0); //獲取當前路徑下的文件並且打開
except
ExcelApplication1.Disconnect;//出現異常情況時關閉
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks[1]);//ExcelWorkbook1與Eexcelapplication1建立連接
ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets[1] as _Worksheet);//Excelworksheet1與Excelworkbook1建立連接 fr_jjfenxi.Label3.Caption:='ExcelWorksheet1.Cells.Item[3,1]';
//ExcelApplication1.WorkBooks1.Close;
ExcelApplication1.Disconnect;
ExcelApplication1.Quit;
但是label3卻不能顯示第三行,第一列中的數據。請各位指點!!! 附說明:
一) 使用動態創建的方法 首先創建 Excel 對象,使用ComObj:
var ExcelApp: Variant;
ExcelApp := CreateOleObject( 'Excel.Application' ); 1) 顯示當前窗口:
ExcelApp.Visible := True; 2) 更改 Excel 標題欄:
ExcelApp.Caption := '應用程序調用 Microsoft Excel'; 3) 添加新工作簿:
ExcelApp.WorkBooks.Add; 4) 打開已存在的工作簿:
ExcelApp.WorkBooks.Open( 'C:\Excel\Demo.xls' ); 5) 設置第2個工作表為活動工作表:
ExcelApp.WorkSheets[2].Activate;
或
ExcelApp.WorksSheets[ 'Sheet2' ].Activate; 6) 給單元格賦值:
ExcelApp.Cells[1,4].Value := '第一行第四列'; 7) 設置指定列的寬度(單位:字符個數),以第一列為例:
ExcelApp.ActiveSheet.Columns[1].ColumnsWidth := 5; 8) 設置指定行的高度(單位:磅)(1磅=0.035厘米),以第二行為例:
ExcelApp.ActiveSheet.Rows[2].RowHeight := 1/0.035; // 1厘米 9) 在第8行之前插入分頁符:
ExcelApp.WorkSheets[1].Rows.PageBreak := 1; 10) 在第8列之前刪除分頁符:
ExcelApp.ActiveSheet.Columns[4].PageBreak := 0; 11) 指定邊框線寬度:
ExcelApp.ActiveSheet.Range[ 'B3:D4' ].Borders[2].Weight := 3;
1-左 2-右 3-頂 4-底 5-斜( \ ) 6-斜( / ) 12) 清除第一行第四列單元格公式:
ExcelApp.ActiveSheet.Cells[1,4].ClearContents; 13) 設置第一行字體屬性:
ExcelApp.ActiveSheet.Rows[1].Font.Name := '隸書';
ExcelApp.ActiveSheet.Rows[1].Font.Color := clBlue;
ExcelApp.ActiveSheet.Rows[1].Font.Bold := True;
ExcelApp.ActiveSheet.Rows[1].Font.UnderLine := True; 14) 進行頁面設置: a.頁眉:
ExcelApp.ActiveSheet.PageSetup.CenterHeader := '報表演示';
b.頁腳:
ExcelApp.ActiveSheet.PageSetup.CenterFooter := '第&P頁';
c.頁眉到頂端邊距2cm:
ExcelApp.ActiveSheet.PageSetup.HeaderMargin := 2/0.035;
d.頁腳到底端邊距3cm:
ExcelApp.ActiveSheet.PageSetup.HeaderMargin := 3/0.035;
e.頂邊距2cm:
ExcelApp.ActiveSheet.PageSetup.TopMargin := 2/0.035;
f.底邊距2cm:
ExcelApp.ActiveSheet.PageSetup.BottomMargin := 2/0.035;
g.左邊距2cm:
ExcelApp.ActiveSheet.PageSetup.LeftMargin := 2/0.035;
h.右邊距2cm:
ExcelApp.ActiveSheet.PageSetup.RightMargin := 2/0.035;
i.頁面水平居中:
ExcelApp.ActiveSheet.PageSetup.CenterHorizontally := 2/0.035;
j.頁面垂直居中:
ExcelApp.ActiveSheet.PageSetup.CenterVertically := 2/0.035;
k.打印單元格網線:
ExcelApp.ActiveSheet.PageSetup.PrintGridLines := True; 15) 拷貝操作: a.拷貝整個工作表:
ExcelApp.ActiveSheet.Used.Range.Copy;
b.拷貝指定區域:
ExcelApp.ActiveSheet.Range[ 'A1:E2' ].Copy;
c.從A1位置開始粘貼:
ExcelApp.ActiveSheet.Range.[ 'A1' ].PasteSpecial;
d.從文件尾部開始粘貼:
ExcelApp.ActiveSheet.Range.PasteSpecial; 16) 插入一行或一列:
a. ExcelApp.ActiveSheet.Rows[2].Insert;
b. ExcelApp.ActiveSheet.Columns[1].Insert; 17) 刪除一行或一列:
a. ExcelApp.ActiveSheet.Rows[2].Delete;
b. ExcelApp.ActiveSheet.Columns[1].Delete; 18) 打印預覽工作表:
ExcelApp.ActiveSheet.PrintPreview; 19) 打印輸出工作表:
ExcelApp.ActiveSheet.PrintOut; 20) 工作表保存:
if not ExcelApp.ActiveWorkBook.Saved then
ExcelApp.ActiveSheet.PrintPreview; 21) 工作表另存為:
ExcelApp.SaveAs( 'C:\Excel\Demo1.xls' ); 22) 放棄存盤:
ExcelApp.ActiveWorkBook.Saved := True; 23) 關閉工作簿:
ExcelApp.WorkBooks.Close; 24) 退出 Excel:
ExcelApp.Quit; (二) 使用Delphi 控件方法
在Form中分別放入ExcelApplication, ExcelWorkbook和ExcelWorksheet。 1) 打開Excel
ExcelApplication1.Connect; 2) 顯示當前窗口:
ExcelApplication1.Visible[0]:=True; 3) 更改 Excel 標題欄:
ExcelApplication1.Caption := '應用程序調用 Microsoft Excel'; 4) 添加新工作簿:
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Add(EmptyParam,0));
5) 添加新工作表:
var Temp_Worksheet: _WorkSheet;
begin
Temp_Worksheet:=ExcelWorkbook1.
WorkSheets.Add(EmptyParam,EmptyParam,EmptyParam,EmptyParam,0) as _WorkSheet;
ExcelWorkSheet1.ConnectTo(Temp_WorkSheet);
End;
6) 打開已存在的工作簿:
ExcelApplication1.Workbooks.Open (c:\a.xls
EmptyParam,EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,0) 7) 設置第2個工作表為活動工作表:
ExcelApplication1.WorkSheets[2].Activate; 或
ExcelApplication1.WorksSheets[ 'Sheet2' ].Activate; 8) 給單元格賦值:
ExcelApplication1.Cells[1,4].Value := '第一行第四列'; 9) 設置指定列的寬度(單位:字符個數),以第一列為例:
ExcelApplication1.ActiveSheet.Columns[1].ColumnsWidth := 5; 10) 設置指定行的高度(單位:磅)(1磅=0.035厘米),以第二行為例:
ExcelApplication1.ActiveSheet.Rows[2].RowHeight := 1/0.035; // 1厘米 11) 在第8行之前插入分頁符:
ExcelApplication1.WorkSheets[1].Rows.PageBreak := 1; 12) 在第8列之前刪除分頁符:
ExcelApplication1.ActiveSheet.Columns[4].PageBreak := 0; 13) 指定邊框線寬度:
ExcelApplication1.ActiveSheet.Range[ 'B3:D4' ].Borders[2].Weight := 3;
1-左 2-右 3-頂 4-底 5-斜( \ ) 6-斜( / ) 14) 清除第一行第四列單元格公式:
ExcelApplication1.ActiveSheet.Cells[1,4].ClearContents; 15) 設置第一行字體屬性:
ExcelApplication1.ActiveSheet.Rows[1].Font.Name := '隸書';
ExcelApplication1.ActiveSheet.Rows[1].Font.Color := clBlue;
ExcelApplication1.ActiveSheet.Rows[1].Font.Bold := True;
ExcelApplication1.ActiveSheet.Rows[1].Font.UnderLine := True; 16) 進行頁面設置:
a.頁眉:
ExcelApplication1.ActiveSheet.PageSetup.CenterHeader := '報表演示';
b.頁腳:
ExcelApplication1.ActiveSheet.PageSetup.CenterFooter := '第&P頁';
c.頁眉到頂端邊距2cm:
ExcelApplication1.ActiveSheet.PageSetup.HeaderMargin := 2/0.035;
d.頁腳到底端邊距3cm:
ExcelApplication1.ActiveSheet.PageSetup.HeaderMargin := 3/0.035;
e.頂邊距2cm:
ExcelApplication1.ActiveSheet.PageSetup.TopMargin := 2/0.035;
f.底邊距2cm:
ExcelApplication1.ActiveSheet.PageSetup.BottomMargin := 2/0.035;
g.左邊距2cm:
ExcelApplication1.ActiveSheet.PageSetup.LeftMargin := 2/0.035;
h.右邊距2cm:
ExcelApplication1.ActiveSheet.PageSetup.RightMargin := 2/0.035;
i.頁面水平居中:
ExcelApplication1.ActiveSheet.PageSetup.CenterHorizontally := 2/0.035;
j.頁面垂直居中:
ExcelApplication1.ActiveSheet.PageSetup.CenterVertically := 2/0.035;
k.打印單元格網線:
ExcelApplication1.ActiveSheet.PageSetup.PrintGridLines := True; 17) 拷貝操作: a.拷貝整個工作表:
ExcelApplication1.ActiveSheet.Used.Range.Copy; b.拷貝指定區域:
ExcelApplication1.ActiveSheet.Range[ 'A1:E2' ].Copy; c.從A1位置開始粘貼:
ExcelApplication1.ActiveSheet.Range.[ 'A1' ].PasteSpecial; d.從文件尾部開始粘貼:
ExcelApplication1.ActiveSheet.Range.PasteSpecial; 18) 插入一行或一列:
a. ExcelApplication1.ActiveSheet.Rows[2].Insert;
b. ExcelApplication1.ActiveSheet.Columns[1].Insert; 19) 刪除一行或一列:
a. ExcelApplication1.ActiveSheet.Rows[2].Delete;
b. ExcelApplication1.ActiveSheet.Columns[1].Delete; 20) 打印預覽工作表:
ExcelApplication1.ActiveSheet.PrintPreview; 21) 打印輸出工作表:
ExcelApplication1.ActiveSheet.PrintOut; 22) 工作表保存:
if not ExcelApplication1.ActiveWorkBook.Saved then
ExcelApplication1.ActiveSheet.PrintPreview; 23) 工作表另存為:
ExcelApplication1.SaveAs( 'C:\Excel\Demo1.xls' ); 24) 放棄存盤:
ExcelApplication1.ActiveWorkBook.Saved := True; 25) 關閉工作簿:
ExcelApplication1.WorkBooks.Close; 26) 退出 Excel:
ExcelApplication1.Quit;
ExcelApplication1.Disconnect; (三) 使用Delphi 控制Excle二維圖
在Form中分別放入ExcelApplication, ExcelWorkbook和ExcelWorksheet
var asheet1,achart, range:variant; 1)選擇當第一個工作薄第一個工作表
asheet1:=ExcelApplication1.Workbooks[1].Worksheets[1]; 2)增加一個二維圖
achart:=asheet1.chartobjects.add(100,100,200,200); 3)選擇二維圖的形態
achart.chart.charttype:=4; 4)給二維圖賦值
series:=achart.chart.seriescollection;
range:=sheet1!r2c3:r3c9;
series.add(range,true);
5)加上二維圖的標題
achart.Chart.HasTitle:=True;
achart.Chart.ChartTitle.Characters.Text:=』 Excle二維圖』 風花雪月 e夢情緣
------
风花雪月 e梦情缘 |
bruce0211
版主 發表:157 回覆:668 積分:279 註冊:2002-06-13 發送簡訊給我 |
謝謝長官的完整資料
如果有 Word 的操作全集,那就更完美了....
小弟的構想是,想把 Word 當報表樣本 (report sample)
製作一個設計好的"空的"報表檔(*.doc , 只有 default format)
再由程式將資料塞到這個報表檔中成為一個完整的報表
所以要知道如何由程式去控制 word ....
可直接列印,也可 email 給別人
一般如 quick report 的報表缺點就是
不能把 report result email 給別人 .....
我想這個需求應該很多人都用得上 發表人 - bruce0211 於 2003/04/26 21:41:30
|
GaryKao99
中階會員 發表:46 回覆:102 積分:54 註冊:2002-08-23 發送簡訊給我 |
|
sailorjoye
一般會員 發表:11 回覆:18 積分:5 註冊:2003-05-13 發送簡訊給我 |
|
kahocg
一般會員 發表:3 回覆:6 積分:1 註冊:2003-05-17 發送簡訊給我 |
|
mcho
初階會員 發表:57 回覆:106 積分:42 註冊:2002-11-11 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi: kahocg,你可使使用下列程式來控制列印標題列與標題欄
with (ExcelApplication1.ActiveSheet AS _WorkSheet).PageSetup do begin PrintTitleRows := '$1:$1'; PrintTitleColumns := ''; end;-------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 --------------------------------
------
Fishman |
alanfujitsu
一般會員 發表:5 回覆:9 積分:2 註冊:2004-02-03 發送簡訊給我 |
|
aj0724
一般會員 發表:11 回覆:41 積分:10 註冊:2003-04-18 發送簡訊給我 |
|
cykuo
一般會員 發表:5 回覆:10 積分:3 註冊:2003-04-03 發送簡訊給我 |
|
aj0724
一般會員 發表:11 回覆:41 積分:10 註冊:2003-04-18 發送簡訊給我 |
|
TTS
初階會員 發表:72 回覆:66 積分:27 註冊:2003-05-06 發送簡訊給我 |
|
sryang
尊榮會員 發表:39 回覆:762 積分:920 註冊:2002-06-27 發送簡訊給我 |
|
u86210779
一般會員 發表:16 回覆:41 積分:16 註冊:2004-06-08 發送簡訊給我 |
引言: 謝謝長官的完整資料 如果有 Word 的操作全集,那就更完美了.... 小弟的構想是,想把 Word 當報表樣本 (report sample) 製作一個設計好的"空的"報表檔(*.doc , 只有 default format) 再由程式將資料塞到這個報表檔中成為一個完整的報表 所以要知道如何由程式去控制 word .... 可直接列印,也可 email 給別人 一般如 quick report 的報表缺點就是 不能把 report result email 給別人 ..... 我想這個需求應該很多人都用得上 發表人 - bruce0211 於 2003/04/26 21:41:30版主你好 僅將本人所知如何 email 方式寫出來, 供大家參考 var SMTP : Varcant; begin SMTP := CreateOleObject('CDONTS.NewMail'); while not 客戶資料表.eof do begin SMTP.from := '寄件人 email'; SMTP.to := '收件人 email'; SMTP.cc := '副本 emai'; SMTP.Subject := '主題'; SMTP.Body := '信件內容'; SMTP.Send; 客戶資料表.next; end; SMTP.close; end;文章的出處我已經忘了, 至於是否有所遺漏也不太記得(應該不會). 對了 好像要 use ComObj 年紀大了, 請大家多多包含 |
avalokita
一般會員 發表:29 回覆:35 積分:12 註冊:2003-09-02 發送簡訊給我 |
7) 設置指定列的寬度(單位:字符個數),以第一列為例:
ExcelApp.ActiveSheet.Columns[1].ColumnsWidth := 5; 程式執行這一行時,得到如下的結果。
請問有誰可指點的嗎? Project project1.exe raise exception class EOleError
with message Method 'Columnwidth' not supported
automation object.'Process stopped.Use Stop or Run To Continue.
|
sega_l
一般會員 發表:0 回覆:1 積分:0 註冊:2004-08-09 發送簡訊給我 |
|
BELLDANDE
一般會員 發表:0 回覆:2 積分:0 註冊:2003-07-29 發送簡訊給我 |
|
nivanar
一般會員 發表:0 回覆:1 積分:0 註冊:2004-08-02 發送簡訊給我 |
|
pristen
一般會員 發表:15 回覆:10 積分:5 註冊:2002-05-27 發送簡訊給我 |
|
nicolas
一般會員 發表:39 回覆:40 積分:15 註冊:2004-05-05 發送簡訊給我 |
|
JLATSTAR
一般會員 發表:8 回覆:16 積分:4 註冊:2007-05-08 發送簡訊給我 |
|
wameng
版主 發表:31 回覆:1336 積分:1188 註冊:2004-09-16 發送簡訊給我 |
|
17kobe
初階會員 發表:86 回覆:73 積分:31 註冊:2007-07-30 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
yching
一般會員 發表:6 回覆:22 積分:10 註冊:2007-03-23 發送簡訊給我 |
大大...
我要在每個分頁加上數行標題&頁碼, 因標題字數超過255,無法放在頁首裡面! 使用共用標題列的話...頁碼計算又是一個問題... 所以寫了一段程式,改insert 在分頁符後面並計算頁碼, 但又發現一個問題..下面這段程式 i=1 時 r有值,但i>1之後就出現exeption, 您是否有遇過相同問題呢?有辦法解決嗎? [exeption] Project Test.exe raised exeption class EOle Excption with message '無效的索引'. Process stopped. Use Step or Run to Cotinue.
編輯記錄
yching 重新編輯於 2008-02-18 12:08:07, 註解 無‧
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |