简体   繁体   English

VBA 对命名范围的引用

[英]VBA reference to named range

I have following code in which I have tried to applied 3 filters, now what I want is, to apply this filter criteria based on named range I have stored relevant value in specific cell and given names to that range我有以下代码,其中我尝试应用 3 个过滤器,现在我想要的是,根据命名范围应用此过滤条件我已将相关值存储在特定单元格中并为该范围指定名称

for first criteria ie >=200 named range is VOLUME对于第一个条件,即 >=200 命名范围是VOLUME

for second criteria ie >=0.07 named range is MOVE对于第二个条件,即 >=0.07 命名范围是MOVE

for third criteria ie >=400 named range is STRENTH对于第三个条件,即 >=400 命名范围是STRENTH

So what are the changes that I need to make in following code?那么我需要在以下代码中进行哪些更改?

Sub FILTER2()

'FILTER CRITERIA
ActiveSheet.Range("$A$2:$AC$500").AutoFilter Field:=6, Criteria1:=">=200", _
    Operator:=xlAnd
ActiveSheet.Range("$A$2:$AC$500").AutoFilter Field:=21, Criteria1:=">=0.07" _
    , Operator:=xlAnd
ActiveSheet.Range("$A$2:$AC$500").AutoFilter Field:=28, Criteria1:=">=400" _
    , Operator:=xlAnd

Range("A1").Select
End Sub

As per my comment, you might want to consider a With statement, better not to refer to ActiveSheet根据我的评论,您可能需要考虑使用With语句,最好不要引用ActiveSheet

Sub FILTER2()

With Sheet1 'Change according to your sheets CodeName
    .Range("$A$2:$AC$500").AutoFilter 6, ">=" & .Range("VOLUME")
    .Range("$A$2:$AC$500").AutoFilter 21, ">=" & .Range("MOVE")
    .Range("$A$2:$AC$500").AutoFilter 28, ">=" & .Range("STRENTH")
End With

End Sub

you can try defining a variable to contain the value of your named range.您可以尝试定义一个变量来包含命名范围的值。 Named Range in your sheet as "Volume" then i can store that value in var namedRange1.在您的工作表中将范围命名为“音量”,然后我可以将该值存储在 var namedRange1 中。

example below:下面的例子:

Sub FILTER2()  

namedRange1 = range("Volume")

'FILTER CRITERIA
ActiveSheet.range("$A$2:$AC$500").AutoFilter Field:=6, Criteria1:=">=" & namedRange1, _
    Operator:=xlAnd

....same with the other lines, just define new variable to contain new named range ....与其他行相同,只需定义新变量以包含新命名范围

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM