在用 C# 编写的 Excel 的 VSTO 项目中,我需要从单元格字符串列表中获取 Range 对象。
这是问题的简化版本:
string strRange = "A1:A2,A5";
Excel.Range r = sheet.get_Range(strRange);
但是,由于列表分隔符在不同的文化设置中可能与逗号不同,因此我实际上正在使用它:
listSep = System.Globalization.CultureInfo.CurrentCulture.TextInfo.ListSeparator;
string strRange = "A1:A2" + listSep + "A5";
Excel.Range r = sheet.get_Range(strRange);
我的问题是当用户在 Excel 选项 > 高级(Application.DecimalSeparator)中更改“十进制分隔符”以匹配 ListSeparator 时,这将不起作用。
使用指定范围的字符串调用 get_Range 的正确方法是什么?
编辑:稍作修改以在下面添加我的评论信息。