Delphi控制Excel之Range問題 |
尚未結案
|
l630521
資深會員 發表:15 回覆:349 積分:372 註冊:2003-02-17 發送簡訊給我 |
請問各位前輩,下面這個語法
Range("D:D,E:E").Select
如果要改成用R1C1的方式,不知該如何下?
我在Delphi】Delphi控制Excel2000操作全集
http://delphi.ktop.com.tw/topic.php?topic_id=29495
有看到這種用法
series:=achart.chart.seriescollection;
range:=sheet1!r2c3:r3c9;
series.add(range,true);
可是我卻無法這樣使用,請各位前輩指教!謝謝! Ian
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
引言: 請問各位前輩,下面這個語法 Range("D:D,E:E").Select 如果要改成用R1C1的方式,不知該如何下? 我在Delphi】Delphi控制Excel2000操作全集 http://delphi.ktop.com.tw/topic.php?topic_id=29495 有看到這種用法 series:=achart.chart.seriescollection; range:=sheet1!r2c3:r3c9; series.add(range,true); 可是我卻無法這樣使用,請各位前輩指教!謝謝! Ian .... uses ComObj; .... var cellrange: string; msexcel, Worksheet, sheetrange: oleVariant; begin msexcel:= CreateOleObject('Excel.Application'); msexcel.Workbooks.Add; msexcel.Workbooks[1].Worksheets[1].Name:= 'Sheet1'; Worksheet:= msexcel.Workbooks[1].Worksheets['Sheet1']; ...... msexcel.Workbooks[1].Worksheets['Sheet1'].Activate; cellrange:= 'R1:C1'; sheetrange:= msexcel.Workbooks[1].Worksheets['Sheet1'].Range[cellrange];發表人 - P.D. 於 2004/06/15 21:17:58 |
l630521
資深會員 發表:15 回覆:349 積分:372 註冊:2003-02-17 發送簡訊給我 |
P.D.前輩,我剛才試了一下
cellrange:= 'R1:C1'; msexcel.Workbooks[1].Worksheets['Sheet1'].Range[cellrange].Select;選到的卻是引用樣式A1方式,我需要引用樣式R1C1的方式, 也就是說 在 R1C1 引用樣式中,Excel 使用"R"加行數位和"C"加列數位來指示儲存格的位置。例如,儲存格絕對參照 R1C1 與 A1 引用樣式中的絕對參照 $A$1 等價。 所以我試著用 cellrange:= 'Sheet1!R1C1'; msexcel.Workbooks[1].Worksheets['Sheet1'].Range[cellrange].Select;這樣是沒辦法用的,請問我要如何才能用這種表示法呢? Ian |
jumo
一般會員 發表:33 回覆:65 積分:24 註冊:2002-04-17 發送簡訊給我 |
|
l630521
資深會員 發表:15 回覆:349 積分:372 註冊:2003-02-17 發送簡訊給我 |
|
jumo
一般會員 發表:33 回覆:65 積分:24 註冊:2002-04-17 發送簡訊給我 |
|
l630521
資深會員 發表:15 回覆:349 積分:372 註冊:2003-02-17 發送簡訊給我 |
|
raymond5
一般會員 發表:5 回覆:13 積分:3 註冊:2003-10-03 發送簡訊給我 |
|
l630521
資深會員 發表:15 回覆:349 積分:372 註冊:2003-02-17 發送簡訊給我 |
我試了很多種方式,Excel在某些地方看得懂,某些地方看不懂R1C1的引用樣式,像Range['A1']就無法用Range['Sheet1!R1C1']來表示,而ExcelChart1.SeriesCollection(2).XValues := '=Sheet1!R2C5:R250C5';就可以,可能是我的觀念不清楚吧!
我最近是在寫一個class,功能是可以將一個DataSet將成Excel,以及畫出所設定的統計圖,本來想用TField.Index來指定第n個數列的,所以才需要用到R1C1的方式,後來只有另尋他法,而我用的方法和raymond5一樣,所以分數就給raymond5了。
謝謝P.D.和jumo的熱心幫忙! Ian
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |