如何獲取在C#中表示爲ListObject的元素?如何獲取在C#中表示爲Excel.ListObject的元素?
這很混亂。
Excel.ListObject table;
var temp = table.ListRows.Item[1].Range["A2"];
該代碼是不正確的,我只是出在這裏......我應該做類似的東西 ?
如何獲取在C#中表示爲ListObject的元素?如何獲取在C#中表示爲Excel.ListObject的元素?
這很混亂。
Excel.ListObject table;
var temp = table.ListRows.Item[1].Range["A2"];
該代碼是不正確的,我只是出在這裏......我應該做類似的東西 ?
你想達到什麼目的?您的表格沒有以任何方式連接到Excel。如果您想獲得從Excel中的ListObject使用類似:
Excel.ListObject table = activeWorksheet.ListObjects[1];
,這將讓你在activeWorksheet第一的ListObject。
如果你想創建一個從範圍列表對象做這樣的事情:
activeWorksheet.ListObjects.Add(Excel.XlListObjectSourceType.xlSrcRange, activeWorksheet.Range["A1", "C10"]);
,這將創建一個基於供應範圍內的ListObject。
這是你如何在C#中獲得一個Excel表(的ListObject)元素的值:
using Excel = Microsoft.Office.Interop.Excel;
...
Excel.ListObject tbl = ... // code to get the selected ListObject
// get element value by column name and row index
object val = ((Excel.Range)xtbl.Range.get_Item(RowInd, xtbl.ListColumns.get_Item(ColName).Index)).Value2;
// get element by row and column index
object val = ((Excel.Range)xtbl.Range.get_Item(RowInd, ColInd)).Value2;
在陽光下哇...我一直在努力的一切。我認爲這是ListObjects [0],但它一直拋出一個神祕的COM錯誤。誰知道第一個因素是[1]。 – Hambone
我很高興我的回答有幫助。也許你可以接受它,如果這能解決你的問題。 –
希望@ user3111311同意。我所能提供的是我的+1。再次感謝你......在我發現這篇文章之前,我浪費了兩個小時的時間進行調試。 – Hambone