gpt4 book ai didi

excel - 解决命名范围字符限制的方法

转载 作者:行者123 更新时间:2023-12-03 02:14:20 26 4
gpt4 key购买 nike

我正在构建一个图表,其中的系列被命名为范围。这一切都工作正常,因为我有一个保管箱,我在其中选择客户,它循环遍历数据,为命名范围创建字符串并编辑它,刷新图表,瞧!

现在的问题是,这个字符串似乎有 255 个字符的限制,如果客户有很多记录,则会出错。

有人遇到过类似的问题或知道解决方法吗?

For i = 8 To lRow
If Sheets("Data").Cells(i, 4).Value = cmbInst.Value Then
nRangeTrade = nRangeTrade & "Data!$A$" & i & ","
nRangeSettle = nRangeSettle & "Data!$C$" & i & ","
End If
Next

nRangeTrade 的值:

数据!$A$85,数据!$A$97,数据!$A$98,数据!$A$156,数据!$A$157,数据!$A$308,数据!$A$309,数据! $A$464,数据!$A$473,数据!$A$474,数据!$A$478,数据!$A$490,数据!$A$541,数据!$A$546,数据!$A$633,Da"

如您所见,这就是问题出现的地方。

最佳答案

像这样怎么样

Sub test()
Dim nRangeTrade As Range, nRangeSettle As Range
lrow = 1000
For i = 8 To lrow
If Sheets("Data").Cells(i, 4).Value = cmbInst.Value Then

If nRangeTrade Is Nothing Then
Set nRangeTrade = Sheets("Data").Range("A" & i)
Else
Set nRangeTrade = Application.Union(nRangeTrade, Sheets("Data").Range("A" & i))
End If

If nRangeSettle Is Nothing Then
Set nRangeSettle = Sheets("Data").Range("C" & i)
Else
Set nRangeSettle = Application.Union(nRangeSettle, Sheets("Data").Range("C" & i))
End If
End If
Next i
'nRangeTrade.Select
Sheets("Data").Names.Add Name:="nRangeTrade", RefersTo:=nRangeTrade
Sheets("Data").Names.Add Name:="nRangeSettle", RefersTo:=nRangeSettle
End Sub

关于excel - 解决命名范围字符限制的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6000533/

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