[英]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;
試試這個,我希望這會對你有所幫助
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.Union
和Application.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.