Excel 以 C 和一个数字开头的命名范围

Excel named range starting with C and a digit

我正在开发一个宏,我需要在其中命名一系列范围,但我 运行 遇到了一个模糊的限制。

Apparently 命名范围可以是单个字母,但 'r'、'R'、'c' 或 'C' 除外,当输入 Excel 名称框是选择活动单元格的整行或整列的快捷方式(我从来不需要并且无法想象自己需要的功能)。

对我来说不幸的是:a) 我需要使用 /^C\d+_.*/ 格式命名范围,并且 b) 我看到的关于此的少量文档(不是来自 Microsoft 的官方文档)说你是只是限制使用单个字母 C,我发现我不能使用与该正则表达式匹配的任何名称范围。

这是我 运行 喜欢的例子:

Sub test()
    On Error Resume Next

    ' These work:
    ThisWorkbook.Names.Add Name:="A0", RefersTo:=Range("A1")
    ThisWorkbook.Names.Add Name:="C0", RefersTo:=Range("A1")
    ThisWorkbook.Names.Add Name:="D0", RefersTo:=Range("A1")
    ThisWorkbook.Names.Add Name:="A1_Test", RefersTo:=Range("A1")
    ThisWorkbook.Names.Add Name:="A1Test", RefersTo:=Range("A1")
    ThisWorkbook.Names.Add Name:="Test_A1", RefersTo:=Range("A1")
    ThisWorkbook.Names.Add Name:="D1_Test", RefersTo:=Range("A1")
    ThisWorkbook.Names.Add Name:="D1Test", RefersTo:=Range("A1")
    ThisWorkbook.Names.Add Name:="Test_C1", RefersTo:=Range("A1")
    ThisWorkbook.Names.Add Name:="Capricious", RefersTo:=Range("A1")

    ' These fail:
    ThisWorkbook.Names.Add Name:="C1_Test", RefersTo:=Range("A1")
    ThisWorkbook.Names.Add Name:="C1Test", RefersTo:=Range("A1")

    Debug.Print "Named Ranges:"
    Dim nm As Name
    For Each nm In ActiveWorkbook.Names
        Debug.Print vbTab & nm.Name
    Next nm
    
End Sub

请注意,我可以使用名称,其中 C 被该正则表达式中的其他字母替换,我可以使用以 C 开头但后面不跟数字的名称,但是我尝试匹配该正则表达式的任何内容都失败了。

我错过了什么吗?实际上有没有办法使用像“C1_Test”这样的命名范围?

如果相关的话,我在 Office 365 中。

谢谢。

似乎“类似于”一个单元格地址也包括“开始于”一个单元格地址。我认为最接近的是将下划线作为第一个字符或中间字符。例如:_C1TestC_1Test

RC 是特例,因为它们也用于 R1C1 表示法。

而且,我同意没有很好地记录命名限制