簡體   English   中英

C#Excel范圍管理

[英]C# Excel range management

我正在處理C#應用程序中的excel文件。

我想知道為什么這段代碼不起作用:

var value1 = ws.Range[ws.Cells[7,4]].Value;

現在我發現這很好用:

int i = 7;
var value1 = ws.Range["D" + i.ToString()].Value;

因為您無法將Range()傳遞給單個Cells()屬性,所以您需要使用Cells() 2個參數進行設置:

var value1 = ws.Range[ws.Cells[7,4],ws.Cells[7,4]].Value;

或(使用嚴格單元格屬性):

var value1 =  ws.Cells[7,4].Value;

ws.Range[]的第一個參數應該是A1樣式表示法

訪問

ws.Cells[7,4]

你可以試試這段代碼:

var value1 = ws.Range["D7"].Value;

看看這個

試試這個,我希望這會對你有所幫助

using Excel = Microsoft.Office.Interop.Excel;
var value1 =(ws.Cells[7, 4] as Excel.Range).Value;
operator    Example
Range       A1:A1
Union       A1,A1
Intersect   A1 A1

這讓我覺得理論上.Range應該需要2個Range參數作為Application.UnionApplication.Intersect來做,但幸運的是它幾乎接受任何在Excel地址欄中工作的字符串表達式。 例如:

string address = ws.Range["offset(a1,1,2,3,4)"].Address[0, 0]; // "C2:F4"

另外, ws.Cells[7,4]Range所以.Range(Range)沒有多大意義。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM