gpt4 book ai didi

excel - 如何使用 VBA 重新定义命名范围?

转载 作者:行者123 更新时间:2023-12-01 18:26:12 25 4
gpt4 key购买 nike

我有一个名为“X”的命名范围,它有 1000 行,我想动态地将其减少到 100。

我尝试了 Range("X").Resize(100,1).Resize(-900,0) 但似乎都没有改变当我通过从范围下拉菜单中选择范围来 checkin Excel 时的命名范围。我做错了什么?

最佳答案

假设您有一个名为“myRange”的命名范围。如果您这样做:

Dim r As Range
Set r = Range("myRange")
Debug.Print r.Resize(10, 1).Address

你的意思是:我有这个范围r。将其设置为匹配 myRange 作为其初始状态。然后将 r 的大小调整为其他值。您所做的是调整了 r 的大小,而不是 myRange

要调整命名范围的大小,您需要执行以下操作:

Dim wb As Workbook
Dim nr As Name

Set wb = ActiveWorkbook
Set nr = wb.Names.Item("myRange")

' give an absolute reference:
nr.RefersTo = "=Sheet1!$C$1:$C$9"

' or, resize relative to old reference:
With nr
.RefersTo = .RefersToRange.Resize(100, 1)
End With

关于excel - 如何使用 VBA 重新定义命名范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11031891/

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