Excel 使用行号和列号的单元格位置 VB.net

Excel Cell Location Using Row And Column Numbers VB.net

我有一个 vb.net 程序正在读取和写入 excel 文件。我需要为特定任务使用 "Range" 函数,但它需要单元格的实际值。我所拥有的只是行号和列号,这取决于用户正在做什么。如何在不进行硬编码的情况下根据 row/column 数字获取实际单元格位置。

示例: 第 1 行,第 1 列 = "A1" 第 5 行,第 27 列 = "AA5"

Workbook("Name").Sheets("Name").Cells(RowVariable, ColVariable).Address

在vb.net中,您需要按如下所示显式转换每个对象。

CellValue  = CType(CType(CType(ExcelApp.Workbooks("WorkbookName"), Excel.Workbook).Worksheets("SheetName"), Excel.Worksheet).Cells(rowNum, colNum), Excel.Range).Value

理想情况下,您应该已经为工作簿和工作表设置了变量,这将使前面的语句更具可读性。例如:

Dim wbk As Excel.Workbook = CType(ExcelApp.Workbooks("WorkbookName"), Excel.Workbook)
Dim wst As Excel.Worksheet = CType(wbk.Worksheets("SheetName"), Excel.Worksheet)
Dim CellValue As Object = CType(wst.Cells(rowNum, colNum), Excel.Range).Value

注意:用您的 Excel 应用程序变量替换 ExcelApp