Table of contents
在与 微软Excel 筛选数据可以让我们只看到我们想要的信息。 每当我们想集中在一个大的数据集或表格中的某些元素时,这种技术就会派上用场。 当工作完成后,我们需要把这些数据放回我们的电子表格中。 尽管 ǞǞǞ 已经有一个内置的工具。 但是 VBA 是在Excel中进行任何任务的最有效、最省时、最安全的方式。 在这篇文章中,我们将通过一些例子来删除Excel VBA中的过滤器。
下载实践工作手册
你可以下载工作手册,用它们进行练习。
移除过滤器的VBA.xlsm在Excel VBA中删除过滤器的5种简单方法
Excel有内置的工具和函数来移除数据中的过滤器。 但随着 Excel VBA 我们可以快速删除这些过滤器,只需运行 VBA 为了从数据中删除过滤器,我们将使用以下数据集。 该数据集在列中包含一些产品的IDs B ,产品名称在列 C 栏中的交货国,以及 D 因为我们只想看到产品的细节。 洗发水 和 护理剂 现在,假设我们需要清除这些被过滤的数据。 我们将使用一些 Excel VBA 宏程序 让我们来演示一下用以下方法从数据中清除这些过滤器的例子 Excel VBA .
1.应用VBA从Excel表中删除所有过滤器
与 Excel VBA 要使用这些代码,用户可以很容易地从功能区使用作为excel菜单的代码。 要使用 VBA 代码来删除Excel表中的所有过滤器,让我们按照步骤往下看。
步骤。
- 首先,到 开发商 选项卡。
- 其次,从 编码 类别,点击 愿景 以打开 Visual Basic编辑器 或者按 Alt + F11 以打开 Visual Basic编辑器 .
- 与其这样做,你可以在你的工作表上点击右键,然后转到 查看代码 这也将带你到 Visual Basic编辑器 .
- 这将出现在 Visual Basic编辑器 我们在这里编写代码,从范围中创建一个表。
- 第三,点击 模块 从 插入 下拉菜单栏。
- 这将创建一个 模块 在你的工作簿中。
- 并且,复制并粘贴 VBA 代码如下所示。
VBA代码。
Sub Remove_Filters1() Dim lstObj As ListObject Set lstObj = Sheet1.ListObjects(1) lstObj.AutoFilter.ShowAllData End Sub
- 之后,通过点击运行代码。 擦肩而过 按钮或按键盘快捷键 F5 .
- 最后,按照步骤,将从工作表中的excel表中删除所有的过滤器。
VBA代码解释
Sub Remove_Filters1()
子 是代码的一部分,用于处理代码中的工作,但不会返回任何值。 它也被称为子过程。 因此我们将我们的过程命名为 Remove_Filters1() .
Dim lstObj As ListObject
变量声明。
Set lstObj = Sheet1.ListObjects(1)
VBA设置只是让我们避免在运行代码时反复输入我们需要挑选的范围。 因此,我们设置对工作表上第一个表的引用。
lstObj.AutoFilter.ShowAllData
这行代码将删除整个数据的所有过滤器。
结束子程序
这将结束该程序。
阅读更多。 如何删除Excel中的过滤器(5个简单的amp; 快速的方法)。
2.使用VBA清除工作表上的所有Excel表格过滤器
让我们来看看另一个利用Excel VBA删除工作表上所有excel表格过滤器的例子。 为此,请按照以下步骤进行。
步骤。
- 首先,去到 发展ope 从功能区中选择 "r "选项卡。
- 第二,点击 视觉基础 以打开 Visual Basic编辑器 .
- 另一种打开方式是 Visual Basic编辑器 是简单地按下 Alt + F11 .
- 或者,在工作表上点击右键,然后选择 查看代码 .
- 接下来,请到 插入 并选择 模块 从下拉菜单中选择。
- 而且,这将打开Visual Basic窗口。
- 之后,复制并粘贴 VBA代码 下面。
VBA代码。
Sub Remove_Filters2() Dim lstObj As ListObject For Each lstObj In Sheet2.ListObjects lstObj.AutoFilter.ShowAllData Next lstObj End Sub
- 此外,按 F5键 或点击 运行子 按钮来运行该代码。
- 而且,这段代码将清除你工作表中的所有Excel表格过滤器,并给出如下输出 方法一 .
VBA代码解释
For Each lstObj In Sheet2.ListObjects lstObj.AutoFilter.ShowAllData Next lstObj
这几行代码循环浏览工作表中的所有表格,并删除整个工作表的所有过滤器。
阅读更多。 如何过滤Excel数据透视表(8种有效方法)
3.在Excel中用VBA删除某一列的过滤器
让我们来看看用Excel VBA清除某一列过滤器的另一种方法。 让我们看看这个过程。
步骤。
- 要开始,请点击 开发商 选项卡上。
- 第二,启动 Visual Basic编辑器 通过点击 视觉基础 .
- 或者,你可以访问 Visual Basic编辑器 通过按 Alt + F11 .
- 或者。 右键点击 在工作表上,选择 查看代码 从菜单中选择。
- 接下来,选择 模块 下的下拉框中选择 插入 .
- 然后会出现Visual Basic窗口。
- 把代码写在那里。
VBA代码。
Sub Remove_Filter3() Sheet1.Range("B3:D16").AutoFilter Field:=4 End Sub
- 最后,按 F5键 来运行该代码。
- 使用这段代码将从你的excel表中的某一列删除过滤器。
VBA代码解释
Sheet1.Range("B3:D16").AutoFilter Field:=4
该代码行只指定字段号,没有其他参数。
阅读更多。 Excel VBA在同一列中通过多个标准进行过滤(6个例子)。
类似读物
- Excel VBA:如何用数组中的多个标准进行过滤(7种方法)
- 在Excel中按日期过滤数据的VBA代码(4个例子)
- 如何在受保护的Excel工作表中使用过滤器(简易步骤)?
- 在Excel VBA中通过多个标准过滤不同的列
- 在Excel中过滤数据的VBA代码(8个例子)
4.清除活动工作表中的所有过滤器
现在,看一下另一个 Excel VBA 让我们按照下面的步骤来做。
步骤。
- 要开始,打开功能区并选择 开发商 选择。
- 然后,要访问 Visual Basic编辑器 ,点击 视觉基础 .
- 按压 Alt + F11 也将调出 Visual Basic编辑器 .
- 或者说。 右键点击 的纸张,并选择 查看代码 从出现的菜单中选择。
- 现在,从 插入 下拉选项,选择 模块 .
- 然后复制并粘贴 VBA 下面的代码。
VBA代码。
Public Sub RemoveFilter() If ActiveSheet.FilterMode = True Then ActiveSheet.ShowAllData End If End Sub
- 运行代码,按 F5 钥匙。
- 最后,你将能够使用这个方法从你的数据中删除过滤器 VBA 像这样的代码 方法一 .
阅读更多:如何在Excel中通过另一个工作表的列表过滤(2种方法)。
5.Excel VBA删除工作簿中的所有过滤器
让我们再来探讨一下 r Excel VBA 所以,让我们看看下面的步骤。
步骤。
- 要开始,打开功能区,选择 开发商 从下拉菜单中选择。
- 然后选择 视觉基础 以打开 Visual Basic编辑器 .
- ǞǞǞ Visual Basic编辑器 也可以通过按 Alt + F11 .
- 或者,你可以 右键点击 的纸张,并选择 查看代码 从弹出的菜单中选择。
- 之后,选择 模块 从 插入 下拉菜单。
- 然后复制并粘贴以下VBA代码。
VBA代码。
Sub Remove_Filters_From_Workbook() Dim shtnam As Worksheet Dim lstObj As ListObject For Each shtnam In Worksheets For Each lstObj In shtnam.ListObjects lstObj.AutoFilter.ShowAllData Next lstObj Next shtnam End Sub
- 最后,运行代码,按 F5 在你的键盘上,你可以在你的工作表中看到这个结果。
- 这 VBA 代码将清除整个工作簿中的所有过滤器,如图所示。 第一种方法 .
VBA代码解释
For Each shtnam In Worksheets For Each lstObj In shtnam.ListObjects lstObj.AutoFilter.ShowAllData Next lstObj Next shtnam
第一个循环用于循环浏览工作簿中的所有表格。 第二个循环用于循环浏览工作表中的所有表格。 然后,循环内的一行只是清除了表格中的过滤器。 之后,用最后两行关闭循环。
阅读更多。 Excel过滤器的快捷方式(3种快速使用方法及示例)
总结
上述方法将协助你 在Excel VBA中删除过滤器 希望这对你有帮助!如果你有任何问题、建议或反馈,请在评论区告诉我们。 或者你可以看一下我们的其他文章。 淘宝网 博客!