簡體   English   中英

VSTO寫入Excel中的單元格!

[英]VSTO write to a cell in Excel!

為什么這樣做:

((Excel.Worksheet)Application.ActiveSheet).get_Range("A1", "A1").Value2 = text;

但這不是:

Excel.Worksheet activeSheet = ((Excel.Worksheet)Application.ActiveSheet);
activeSheet.Cells[0, 0] = text;

我需要第二種方式,因為我需要使用rowIndex和colIndex循環。 我怎樣才能做到這一點?

我收到錯誤:

mscorlib.dll中發生未處理的“System.Runtime.InteropServices.COMException”類型的異常附加信息:來自HRESULT的異常:0x800A03EC

您唯一缺少的是(除了使用基於1的索引之外)是將單元格引用顯式地轉換為范圍:

Excel.Worksheet activeSheet = ((Excel.Worksheet)Application.ActiveSheet);
int endRow = 5;
int endCol = 6;

for(int idxRow = 1; idxRow <= endRow; idxRow++)
{
    for(int idxCol = 1; idxCol <= endCol; idxCol)
    {
        ((Excel.Range)activeSheet.Cells[idxRow, idxCol]).Value2 = "Kilroy wuz here";
    }
}

暫無
暫無

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

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