- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试创建一个过滤器来执行以下操作
以“4”开头或包含“2TWH”或包含“2TER”
我相信结果会是这样的
ActiveSheet.Range("$A$5:$H$10").AutoFilter Field:=2, Criteria1:="=4*", _
Operator:=xlOr, Criteria2:="=*2TWH*"
但我还需要以某种方式为 ="=2TER"设置一个标准 3
我做了一些谷歌搜索,发现您可以将值存储到数组中,然后调用数组值,但我无法以可用的方式将它们放入数组中。
有人可以提供一些帮助吗?
最佳答案
这应该可以解决问题:
ActiveSheet.Range("$A$5:$H$10").AutoFilter Field:=2, Criteria1:="=4*", _
Operator:=xlOr, Criteria2:=Array("*2TWH*","*2TER*")
这不会引发任何错误,但是......
它只需要 2 个条件,因为有通配符 (*
)。
这是数组中的最后一个条件(此处为 *2TER*
)
理想情况下,这会很好,因为它适用于常量,
但因为您使用通配符 (*
),所以它只支持 2 个条件...:/
ActiveSheet.Range("$A$1:$H$10").AutoFilter Field:=2, Criteria1:=Array("*2TWH*", "*2TER*", "4*"), _
Operator:=xlFilterValues
<小时/><小时/>
所以你必须使用AdvancedFilter
:
With ActiveSheet
'Const xlFilterInPlace = 1
.Range("$A$5:$H$10").AdvancedFilter _
Action:=xlFilterInPlace, _
CriteriaRange:=WsFilterSettings.Range("A1:A4")
End With 'ActiveSheet
AdvancedFilter
采用范围作为条件输入,CriteriaRange
,因此您必须放在一张纸上>:
该范围的每个列都通过AND链接
该范围的每个ROW都通过OR
链接因此,请仔细构建您的 table !
在上面的示例代码中,我使用了:
(假设您的列标题是要过滤的列):
A1 | Column To Filter On
A2 | 4*
A3 | *2TWH*
A4 | *2TER*
关于vba - Excel : filter with Multiple Criteria : AutoFilter or AdvancedFilter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42803528/
我有一些代码可以根据第一个条件自动过滤工作表,如果没有返回条件,则根据第二个条件自动过滤。 条件语句是我需要帮助的地方,即使第二行的第一个单元格中有数据,它也会不断出错(我显然不想包含标题): Wit
我想刷新我的数据透视表,因为它正在查看的范围内的数据确实发生了变化。然后我需要能够从过滤器中取消选择任何空白。 我下面的代码就是这样做的,但是如果不存在空白(以 "" 或 (blank) 的形式),那
我正在尝试在报告中向用户显示过滤器列。 Excel 给出了一个不同的图标,但没有。列最好用另一种颜色(如蓝色)为列着色。 我在 Is there a way to see which filters
我正在将 VBA AutoFilter 应用于 Excel 表中的某些结果。它似乎编译正确,但是当我检查结果时,自动筛选器隐藏了匹配和不匹配我应用的条件的行。 如果我手动选择应用的自动过滤器,我会看到
我想过滤具有特定值的列。 问题陈述: Excel 如下所示,工作表名称为“Current_Data”。 我需要过滤值为“VP”的第三列并使用自动过滤器获取输出。 代码片段: Sub Filter_CP
到目前为止,我一直在使用 AutoFilter() 方法,没有任何问题。但我无法标记或获取过滤行的范围,无法对它们进行计数/复制/删除。 我看过很多关于 VBA 问题的帖子,但没有关于 C# 的帖子。
我有这个简单的可编辑 JComboBox,它在您键入时过滤可用的选项。除了一些奇怪的情况外,它几乎可以工作,例如,当您键入“Sass”时,它会将可用选项过滤为单个“Sassi di Matera”,但
我有一个包含员工列表的电子表格。我想运行一个宏,当在输入框中输入员工编号时,该宏将过滤特定员工。但是,如果该号码不存在,我希望显示一条错误消息,让您可以选择重试。 我的尝试如下: Option Exp
我试图在过滤列 A 之后获取列 B 中的唯一名称,然后将它们粘贴到列 C 中,如下所示: Range("A1:B1").Select Selection.AutoFilter
我一直试图理解一个同事在网上某处找到的宏,用于根据选定的标准过滤一组数据。部分代码是一个 IF 语句,检查 AutoFilterMode 是否已关闭,如果发现它已关闭,则将其打开,如下所示 'Turn
我仍在学习 VBA,想知道是否有办法在筛选范围内运行 VLOOKUP。 比如下面的代码,我过滤数据后,第一行数据是A4。 但是,我必须手动指定第一行数据在A4中。 我的问题是是否有可能让宏检测第一行数
我想用 VBA 做什么 - 使用数组过滤表并删除行。我的数组有 4 个元素(在循环中更改为有 5 个不同的集合)。正在过滤的列有 5 个元素。我只想得到 1。这是一个循环,它将创建 5 个报告,每个报
我正在编写一段 VBA 代码,它应该保存并恢复 Excel 中当前的自动筛选状态。我一直在使用the code here很长一段时间没有任何问题,但现在我遇到了一个非常严重的问题。让我来说明一下...
我正在使用 Powershell 来操作具有数千个计算机名和 IP 的 .csv 文件。我正在使用 powershell,因为它是我正在构建的更大脚本的一部分。 我正在通过 Excel 使用 Rang
我正在使用 VBA 应用具有特定日期范围的自动过滤器并运行以下代码。问题是,每次我应用自动过滤器时,日期都是美国格式(MM/DD/YYYY)。在我的报告中,日期采用英国格式 (DD/MM/YYYY),
假设我在 Column_H 上有很多值。 我需要搜索值= "Close"在该列上,如果找到则 clear the entire row包含该值。 备注 : 使用 Autofilter 方法不适用(由于
我希望你能帮忙。我收到错误 Run Time Error 1004 AutoFilter method of Range class Failed 当我运行我的代码时 Public Sub TestT
我正在尝试创建一个过滤器来执行以下操作 以“4”开头或包含“2TWH”或包含“2TER” 我相信结果会是这样的 ActiveSheet.Range("$A$5:$H$10").AutoFilter F
我是 VBA 新手,正在开发一个项目,在该项目中我必须过滤两个特定值(4400000000 和 5600000000)之间的数据。这对我来说比较棘手的是,5500000000 中的一些后面有字母,即
我尝试了以下C# 编码: wsDt.Cells["A10:G10"].AutoFilter = false; 但过滤器并未从我的 excel 中删除。 任何其他删除它的方法。 谢谢... 最佳答案 在
我是一名优秀的程序员,十分优秀!