无法从 Table 中获取特定的单元格值

Unable to get a specific Cell value from a Table

我需要将一些 VBA 代码移植到 VB.Net 插件,但我无法从我的 Table.

我可以将 Range(2,2) 更改为 "Test",但 table.Range(2, 2).ToString 给出 System.__ComObject 作为值。

Private Sub Button1_Click(sender As Object, e As RibbonControlEventArgs) _
Handles Button1.Click

    Dim table As Excel.ListObject
    table = Globals.wsTables.ListObjects("vehicleDefinations")
    table.Range(2, 2) = "Test"

    Dim file As New System.IO.StreamWriter _
    ("C:\Users\Ryzen2600x\Downloads\Debug.txt", False)
    file.WriteLine(table.Range(2, 2).ToString)
    file.Close()

End Sub

你错过了 .Value

file.WriteLine(table.Range(2, 2).Value.ToString)

不要使用 .Range 检索值。而是尝试使用

table.DataBodyRange.Cells(2, 2)

[MyTable].Cells(2,2)

请参考此代码:

private void ListObject_Range()
{
   Microsoft.Office.Tools.Excel.ListObject list1 = this.Controls.AddListObject(this.Range["A1", "C4"], "list1");
   MessageBox.Show("The list object contains " + list1.Range.Cells.Count.ToString() + " cells.");
}

更多信息,请查看

ListObject.Range Property

帮助它帮助你。

谢谢, 由纪