gpt4 book ai didi

vba - 视觉错误? Excel-vba AllowEditRange 有很多区域

转载 作者:行者123 更新时间:2023-12-04 20:35:34 32 4
gpt4 key购买 nike

当我运行此代码时:

Sub AerTest()
'aer = allow edit range
Dim c, aerMain As Range

Set aerMain = Range("A1")

For Each c In Range("A1:AI23")
If c.Value = 1 Then
Set aerMain = Union(c, aerMain)
End If
Next c

ActiveSheet.Protection.AllowEditRanges.Add Title:="Test", Range:=aerMain

End Sub

我希望正在审查中-> 允许编辑范围在相关范围 (A1:AI23) 中找到称为“测试”的内容,其中包含所有带有 1 的单元格。

就功能而言,它似乎有效。锁定工作表时,可以更改所有包含 1 的单元格。

但是,如下所示,它并没有发生正确的事情,即它只显示了它应该显示的范围的几个区域。似乎“引用单元格”字段仅包含类似
=$AI$23;$AG$23;$AE$23;$AC$23;$AA$23;$Y$23;$W$23;$U$23;$S$23;$Q$23;$O$23;$M$23;$K$23;$I$23;$G$23;$E$23;$C$23;$A$23;$AI$21;$AG$21;$AE$21;$AC$21;$AA$21;$Y$21;$W$21;$U$21;$S$21;$Q$21;$O$21;$M$21;$K$21;$I$21;$G$21;$E$21;$C$21;$A$21;$AI$19;$AG$19;$AE$19;$AC$19

这显然不包含所有相关单元格(例如“A1”)。

如果我进入下面显示的菜单并按 OK 而不是 Cancel,我将失去在工作表锁定时让所有包含 1 的单元格可编辑的功能,然后我实际上只能编辑 this 中的字段“引用单元格”字段。

这纯粹是一个视觉错误,还是有其他方法可以允许在处理具有许多区域的范围时避免这些怪癖的编辑范围?

The result when running the above code

最佳答案

我从 Microsoft re Define and use names in formulas 中找到了一些文档.重要的部分说:

Name length A name can contain up to 255 characters.



就 Excel 而言, =$AI$23;$AG$23;$AE$23;$AC$23;$AA$23;$Y$23...只是另一个范围名称,因此仅限于 255 个字符。

您的 AllowEditRanges.Add会起作用,因为这实际上是在使用范围本身而不是通过范围名称,但是添加的名称将被截断为 255 个字符。

关于vba - 视觉错误? Excel-vba AllowEditRange 有很多区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43135616/

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