gpt4 book ai didi

VBA:使用字符串变量设置范围名称

转载 作者:行者123 更新时间:2023-12-03 02:44:36 25 4
gpt4 key购买 nike

我遇到了一个看似简单的问题,但我无法弄清楚我的代码有什么问题。

Dim x As Long, y As Long, z As Long
Dim ContractName As String
Dim RangeToName As Range

y = Cells(1, 1).End(xlToRight).Column

For x = 1 To y
ContractName = Cells(1, x)
z = Cells(Rows.count, x).End(xlUp).Row
Set RangeToName = Range(Cells(2, x), Cells(z, x))
RangeToName.Name = ContractName
Next x
End Sub

我正在尝试根据“ContractName”单元格中的文本来命名范围,该文本将针对每个 x 进行更改。

但是“RangeToName.Name = ContractName”行给了我一个运行时 450 错误。

但是,如果我在该行中添加任何其他文本,例如“RangeToName.Name =”test“& ContractName”,一切都会正常,并且我的范围以完整的文本字符串命名,包括“ContractName”单元格中的文本。 .

我错过了什么?

干杯

最佳答案

名称必须以字母或下划线开头,不得包含空格,并且不得与 Excel 中的保留关键字相同。

例如:

名称不能以数字开头。

名称不能是“这是一个测试”

名称不能是“A1”

“KL2000”不能用作名称,因为会与单元格引用 KL2000 冲突,但“_KL2000”可以使用。

您应该始终直接在 Excel 应用程序中尝试使用 VBA 执行的操作。如果您使用“KL2000”之类的名称执行此操作,您将收到一条有意义的错误消息。

关于VBA:使用字符串变量设置范围名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29098242/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com