在VBA中使用输入框进行过滤条件设置

问题描述 投票:0回答:1

这可能是蹩脚的,但我需要VBA的帮助,同时使用输入框的过滤条件。我试图使用下面的代码,用户需要在+ & -中输入值来过滤相应的范围。

在这种情况下,我试图过滤5为上限范围和-4.5为下限范围。我面临的困难是,当我输入-4.9,-4.8,-4.7或-4.6作为下限范围时,该值被认为是-5,而当我使用-4.5,-4.4,-4.3等直到-4.1时,该值被认为是-4,我需要在输入框中输入准确的值。

Sub InputFilter()

    Dim iuval As Integer
    Dim ilval As Integer

    iuval = InputBox("Please enter the upper range")
    ilval = InputBox("Please enter the Lower range")


    Range("G1").Select
    ActiveSheet.Range("$A$1:$H$71").AutoFilter Field:=7, Criteria1:=">" & iuval, _
        Operator:=xlOr, Criteria2:="<" & ilval

End Sub
vba filter numbers criteria inputbox
1个回答
2
投票

改变数据类型 iuvaldouble 否则VBA会自动将您的输入转换为 integer 这意味着在你的情况下,它将把你的输入转换为-4或-5。

Dim iuval As Integer 应该是 Dim iuval As double

也是如此。Dim ilval As Integer.

© www.soinside.com 2019 - 2024. All rights reserved.