在VSTO工作簿中, 我想从Excel制作的ListObject中获取数据。所以在代码中没有像DataBinding这样的东西。
我想做的是这样的事情:
var rows = ((DataTable)Globals.Feuil1.MyNamedListObject.DataSource).Rows
不幸的是,这里的DataSource是null,因为它当然没有绑定。
答案 0 :(得分:0)
我建议您按名称从工作簿中获取ListObject。下面的函数将通过字符串名称返回ListObject。它遍历所有工作表和各自的ListObject,将名称与您传递的字符串进行比较,如果匹配,则返回ListObject。希望能帮助到你。最好的祝福。
'
' Find a Table in the Workbook by its String name
'
Function GetTable(strTable As String) As ListObject
For Each WS In ActiveWorkbook.Worksheets
For Each tbl In WS.ListObjects
If tbl.Name = strTable Then
Set GetTable = tbl
On Error GoTo 0
Exit Function
End If
Next
Next
Set GetTable = Nothing
End Function