select多个不连续的单元会引发exception0x800A03EC

通常在我的代码中,我需要定义一个多个discontigous单元格的范围(因此我不能使用冒号:分隔符。

要select范围我使用worksheet.Range[] ,即使在互联网上我经常看到get_Range()方法,但它不显示在智能感知的build议。 虽然使用Range[]get_Range()我注意到没有区别。

文件说

范围的名称。 这必须是macros的语言中的A1式参考。 它可以包含范围运算符(冒号),交点运算符(空格)或联合运算符( 逗号 )。 它也可以包括美元符号,但是它们被忽略了。 您可以在范围的任何部分使用本地定义的名称。 如果你使用一个名字,这个名字被认为是用macros的语言。

所以工会运营商根据文档是逗号。

为了使图片清晰,我将直接转到示例。

这抛出exception:

 cell.Formula = "=SUM(A1;B5;C6)"; 

这工作正常

 cell.Formula = "=SUM(A1,B5,C6)"; 

这抛出exception:

 worksheet.Range["A1,B5,C6"]; 

这工作正常

 worksheet.Range["A1;B5;C6"]; 

它混淆了我那么哪些是实际正确的,所以何时使用逗号和分号。