在Excel中,当以编程方式添加命名范围时,我可以这样做:
ThisWorkbook.Names.Add Name:="FirstName", RefersTo:="=$B$2"
或作为:
ThisWorkbook.Names.Add Name:="FirstName", RefersToLocal:="=$B$2"
现在,有人能告诉我RefersTo
和RefersToLocal
的区别吗?他们似乎在做同样的事情,Excel文档也解释不了多少。(它说后者使用“本地化文本”,但没有解释这意味着什么。)
发布于 2017-11-23 00:53:55
Formula
允许VBA代码使用美国英语语法编写Excel公式,而FormulaLocal
允许VBA代码使用用户当前的语言设置编写公式。(还有FormulaR1C1
和FormulaR1C1Local
属性,允许在R1C1符号中输入公式。)
类似地,RefersTo
允许使用美国英语语法输入“命名范围”的公式(实际上不仅仅是对范围的引用),而RefersToLocal
允许使用本地语言。(还有RefersToR1C1
和RefersToR1C1Local
属性,允许在R1C1符号中输入“命名范围”的公式。)
在西班牙语Excel中,这个:
Range("A1").Formula = "=DAY(NOW())"
相当于:
Range("A1").FormulaLocal = "=DIA(AHORA())"
这是:
ThisWorkbook.Names.Add Name:="TodaysDayOfMonth", RefersTo:="=DAY(NOW())"
相当于:
ThisWorkbook.Names.Add Name:="TodaysDayOfMonth", RefersToLocal:="=DIA(AHORA())"
这些“范围名称”看起来可能很奇怪,但可能很有用,因为它们可以在VBA中用作
... = Range("TodaysDayOfMonth")
或在Excel中
=IF(TodaysDayOfMonth=15,1,0)*A5
而不需要在实际单元格中实际执行DAY(NOW())
计算。
https://stackoverflow.com/questions/47447300
复制相似问题