Tag: filter

按特定单元格中的值进行过滤

我有一个Excelmacros,按特定值过滤数据。 我使用的代码如下。 Sheet6.Select ActiveSheet.Range("$A$1:$E$2000").AutoFilter Field:=1, Criteria1:="2249" 我希望它筛选单元格中的值而不是硬编码的“2249”。 我已经尝试了像RANGE和CELLS这样的单元格引用,但是没有奏效。 任何帮助将不胜感激。

VBA将循环内的过滤表复制到新工作表中

我有一个桌子,有很多列。 我想一个接一个地过滤表格中的某个特定列中出现的几个值。 一旦表格被过滤(对于一个值),我想复制结果到一个新的表格,并继续与第二个值。 (其实我想将它复制到一个新的工作簿并保存,但这是下一步。) 这是我的代码: 'Start Loop Public Sub LP() Dim years As Variant Dim number As Variant 'Array for loop years = Array("2013", "20131", "20132") For Each number In years ' filter definition (filter by number) Dim i As Integer, rngData As Range Set rngData = Range("A1").CurrentRegion i = Application.WorksheetFunction.Match("ColumnXY", Range("A1:BM1"), 0) rngData.AutoFilter field:=i, […]

如果我的范围不等于今天的date,如何删除行?

我是第一次尝试macros观的初学者。 如果列K中的date不等于今天的date,我想要删除整个工作表的行。 除了某些语法错误,我不能补救的代码之外,我相信数据转储的列K没有被格式化为捕获我试图运行的代码的date。 这是我到目前为止的代码。 请使用在线资源,试图自学的人温柔:) Sub GetTodaysPopulation() Dim MySheet As Worksheet, MyRange As Range Dim LastRow As Long, LastCol As Long Application.DisplayAlerts = False Set MySheet = ThisWorkbook.Worksheets("TradeExData") ThisWorkbook.Worksheets("TradeExData").Activate With MySheet LastRow = .Range("A" & .Rows.Count).End(xlUp).Row LastCol = .Range("A" & .Columns.Count).End(xlToLeft).Column Set MyRange = .Range(.Cells(1, 1), .Cells(LastRow, LastCol)) End With With MyRange .AutoFilter([Field:=11], [Criteria1: <> […]

Excel数据透视表filter在值字段中具有文本项目

我正在使用下面的代码来过滤称为(Missing Data)文本,但是在运行代码之后,文本项在数据透视表中仍然可见。 概念:数据透视表是从常规表创build的, ServiceRange列由文本项和值项之间的混合组成。 For Each PI In PvtTbl_RegionalPeerGroup.PivotFields("ServiceRange").PivotItems If PI.Caption = "(Missing Data)" Then PI.Visible = False Stop End If Next PI

寻找使用选项button,search框和button控件从表中返回数据

地狱,我希望能够有一个searchbutton命令框input文本。 所以,如果看imgur链接,我希望能够在search框(TextBox21)中input文本“Corporate”,同时勾选“Site”选项button(OptionButton21)我想让他们点击CommandButton21并拥有所有表格中显示网站的“企业”项目。 我在网上阅读了很多东西,但真的很难将所有元素和事件捆绑在一起。 任何帮助将非常感激。 http://imgur.com/a/xKy5f (我的电子表格的剪贴板),我的代码在下面,但是无可否认空白。 我只是有没有编码行动的元素,因为我没有尝试过什么成功。 Private Sub CommandButton21_Click() End Sub Private Sub OptionButton21_Click() End Sub Private Sub OptionButton22_Click() End Sub Private Sub OptionButton23_Click() End Sub Private Sub TextBox21_Change() End Sub

excel vba:为sheet2创buildfilter,将数据从应用于sheet1的filter中获取

所以我对excel和VBA很不熟悉,但在过去的几个星期里试图挖掘它。 我需要为包含相同数据(和列)的多个工作表设置filter。 为了在多个工作表中筛选相同的范围,我已经find一个简单的解决scheme: Sub apply_autofilter_across_worksheets() Dim p As Integer, q As Integer p = Worksheets.Count For q = 1 To p With Worksheets(q) .AutoFilterMode = False .Range("A1").AutoFilter .Range("A1").AutoFilter Field:=1, Criteria1:="2" End With Next q End Sub 真正的麻烦从这里开始:我想在表1到第2列中设置一个filter,从第1列获取结果数据并将其用作表2的过滤条件(最终是3)。 床单看起来像这样: 工作表Sheet1 | itemgroup | subject | course | 1 | biology | B.Sc. | 1 | chemistry| […]

在Excel VBA中创build多字段searchfunction

我需要在VBA中build立一个链接的searchfunction,在将数据input到给定的search字段后,它也会自动更新。 我已经能够用下面的代码部分成功地完成这个工作: 自动filtersearch – 在标准模块中 码: Sub FilterTo1Criteria() With Sheet3 If Range("A3") <> vbNullString Then .AutoFilterMode = False .Range("A6:J1015").AutoFilter .Range("A6:J1015").AutoFilter Field:=1, Criteria1:=Range("A3") Else Selection.AutoFilter End If End With End Sub 工作表更改/自动更新 – 这是在工作表模块 码: Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$3" Then Application.EnableEvents = False FilterTo1Criteria Application.EnableEvents = True End If End […]

更新/刷新Excel表格filter值

我有一个macros设置将数据从一个表复制到另一个,然后应用filter..(这适用于另一台计算机/相同的Excel版本) 目前数据被正确复制,但未设置filter,并且filter值丢失。 在保存并closures过滤选项之前,可用。 我试图刷新工作簿,工作表,范围..等等: Range( … ).RefreshAll 任何想法,将不胜感激,这似乎更像是一个错误而不是逻辑问题 – 考虑到它适用于其他电脑。 保存并closures之前: 保存并重新打开后:

VBA通过单元格值实时筛选列表框

我有一个工作表中的列表框,它通过点击一些指定的单元格来激活。 我想通过写在这个单元格上过滤我的列表框。 例如,如果我在该单元格中写入“asd”,则列表框应该实时返回以“asd”开头的行。 Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Target.Value <> "" Then With ListBox1 For i = .ListCount – 1 To 0 Step -1 If InStr(1, LCase(.List(i, 0)), LCase(Target.Value)) = 0 And _ InStr(1, LCase(.List(i, 1)), LCase(Target.Value)) = 0 And _ InStr(1, LCase(.List(i, 2)), LCase(Target.Value)) = 0 And _ […]

高级在Excel中过滤VBA,使用OR

我尝试在VBA中对Excel 2013进行高级筛选。 由于某些特定的原因,我不想使用Excel表格。 我创build了两行标题(第48行),其中一行标准为多行(A49:Q55),另一行标题(第56行)为数据行。 当我尝试使用filter来使用OR条件,所以我想过滤这两个值从数据范围,我把数据放在一个单元格下面的标准范围下面的第二行这个单元格中的数据比我只接收数据只对应于头下面的第一个单元格。 什么事情出错了? Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A49:Q55")) Is Nothing Then On Error Resume Next ActiveSheet.ShowAllData Range("A56").CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("A48").CurrentRegion End If End Sub