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

时间:2018-08-10 05:52:19

标签: excel vba vb.net excel-vba vsto

我需要将一些VBA代码移植到VB.Net插件上,但是我无法从表中获取特定的单元格值。

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

This is Image of my table

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

3 个答案:

答案 0 :(得分:0)

您丢失了.Value

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

答案 1 :(得分:0)

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

table.DataBodyRange.Cells(2,2)

[MyTable] .Cells(2,2)

答案 2 :(得分:0)

请参考以下代码:

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

帮助它可以帮助您。

谢谢, 结城