C# 获取excel地址中的列名部分

C# 获取excel地址中的列名部分,c#,excel,C#,Excel,我有这段代码来获取工作表中最后一个单元格的地址。它返回“$U$463”,如何让它只返回U”部分 鲁伊·马丁斯 Range newContracts = activeWorksheet.Cells.SpecialCells(XlCellType.xlCellTypeLastCell); string address = newContracts.get_Address(); 您可以使用RegularExpression或Substring方法,如下所示: string rowId = addr

我有这段代码来获取工作表中最后一个单元格的地址。它返回“$U$463”,如何让它只返回U”部分

鲁伊·马丁斯

Range newContracts = activeWorksheet.Cells.SpecialCells(XlCellType.xlCellTypeLastCell);

string address = newContracts.get_Address();

您可以使用RegularExpression或Substring方法,如下所示:

string rowId = address.Substring(address.LastIndexOf('$') + 1);
string columnId = address.Substring(1, address.LastIndexOf('$') - 1);

您可以使用字符串操作:

string columnLetter = address.Split('$', StringSplitOptions.RemoveEmptyEntries)[0];

我宁愿使用列的索引号而不是它的字母;您可以从
属性中获得它。如果您确实需要字母标识符,您可以计算它。我肯定记得有一个内置函数,用于将列的索引号(即3)转换为其字母标识符(即“C”),但我现在找不到它。

这正是我一直试图得到的,某个函数实现了它。字符串操作很简单,我只是想做得不同。@ruimatins我想我找到了我想要的:convertformal函数。但我不能让它只返回字母
“D“
用于第四列;它总是返回
“$D:$D”
这个问题有一些有用的信息