2011-07-22 105 views
2

我試圖循環遍歷一個範圍並將值寫入該範圍的單元格。給實例化範圍一個實際值時,我會得到一個異常。循環遍歷Excel範圍並寫入.net中的單元格.net

我做錯了什麼?

int fieldcount = dr.FieldCount; 
for (int f = 0; f < fieldcount; f++) { 
    Excel.Range chartRange; 
    int count = 1; 
    chartRange = sheet.Range["B43:043"]; 

    foreach(Excel.Range cell in chartRange.Cells) { 
     Debug.Print(cell.Address, cell.Value); 
    } 
} 

我也嘗試設置範圍如下:

sheet.get_Range("B43", "043"); 

我得到的例外是Exception from HRESULT: 0x800A03EC

+1

chartRange = sheet.Range [「B43:043」]; 043?你確定那是正確的? – MGZero

+1

你也應該考慮不要遍歷單元格,因爲它是一個相當緩慢的過程,特別是當涉及「大」範圍時;相反,請考慮通過數組寫入整個數據塊:http://clear-lines.com/blog/post/Write-data-to-an-Excel-worksheet-with-C-fast.aspx – Mathias

回答

4

我想你已經在你的範圍內一個錯字。 「043」(具有前導零的數字43)不是有效的單元格引用。你打算:sheet.Range [「B43:O43」]?

+0

謝謝Eddy !我覺得自己像個白癡,但是謝謝。哈哈 – Eric

相關問題