检查有效数据点范围的最快方法。。。避免vba中的循环
嗨,我想知道什么是检查一系列数据点以查看这些点是否有效的最快(使用最少内存)方法 假设我有一个rng=范围(“A1:A100”)。我想写一些这样的东西检查有效数据点范围的最快方法。。。避免vba中的循环,vba,loops,memory,Vba,Loops,Memory,嗨,我想知道什么是检查一系列数据点以查看这些点是否有效的最快(使用最少内存)方法 假设我有一个rng=范围(“A1:A100”)。我想写一些这样的东西 If c in rng = "N/A Requesting Data..." Then x = false Else Application.OnTime Now() + TimeValue("00:00:05"), "refresh" .... etc. End if 我可以在不循环的情况下执行此操作吗?这将检查A
If c in rng = "N/A Requesting Data..." Then
x = false
Else
Application.OnTime Now() + TimeValue("00:00:05"), "refresh" .... etc.
End if
我可以在不循环的情况下执行此操作吗?这将检查
ActiveSheet
的A1:A100
。如果没有单元格包含“N/A”作为其文本的一部分,则RangeLooksGood
设置为True
Sub TestRangeForValidContent()
Dim RangeLooksGood As Boolean
With ActiveSheet
RangeLooksGood = (Application.WorksheetFunction.CountIf(.Range("A1:A100"), "*N/A*") = 0)
End With
If RangeLooksGood Then
Application.OnTime Now() + TimeValue("00:00:05"), "refresh"
End If
End Sub
好。请注意,我用胖手指指了指我的原始代码,并使用了
CountIf(.Range(“A1:A100”),“*N?A*”
。“N?A”中的“?”表示“N”后面跟有任何字符,后面跟有“A”,因此类似“圣诞老人”的东西会被解读为无效单元格。它应该是CountIf(.Range(“A1:A100”),“*N/A*”
,就像在我的编辑中一样。