c# - 我如何从excel中获取单元格地址

标签 c# excel

例如,在给定行号和列号的情况下,如何从 excel 中获取单元格地址

第 2 行和第 3 列应该返回 C2...请帮忙

最佳答案

我不是 VSTO C# 的大用户 - 我通常选择 VBA。但是,以下两个函数可能对您有用。不确定是否可以进一步简化它们:

public string RangeAddress(Excel.Range rng)
{
    return rng.get_AddressLocal(false, false, Excel.XlReferenceStyle.xlA1,
           missing, missing);
}
public string CellAddress(Excel.Worksheet sht, int row, int col)
{
    return RangeAddress(sht.Cells[row, col]);
}

RangeAddress 将采用任何 Excel 范围并将地址返回给您。如果您想要绝对样式(带有美元符号,例如 $C$3),那么您必须将 get_AddressLocal 调用的前两个参数更改为 true,true。

要从行/列对中获取单元格地址,您可以使用 CellAddress。它确实需要一张纸来获取地址。但是,如果您不想提供工作表,则可以换入 (Excel.Worksheet)ActiveSheet(这可能有效也可能无效,具体取决于您在 VSTO session 中打开的内容)。

关于c# - 我如何从excel中获取单元格地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2628603/

相关文章:

excel - 如何使用 DAX 函数 ParallelPeriod

c# - 字符串大小写敏感性

c# - 寻找一个离线库来格式化 HTML,我可以将其与 .NET 代码一起使用

c# - 使用目录测试失败

javascript - 重定向到不同域页面后,Excel Javascript API 不可用

excel - 使用 Excel 2010 和参数的可刷新 Web 查询

c# - NUnit 项目引起的 System.BadImageFormatException

c# - 从 C# 将数据导出到 PDF 时出错

c# - System.Windows.Forms.ToolStrip 高度或自动调整大小

VBA 写入 Word,更改字体格式