如何用函数或宏将excel中符合条件的数据行拷贝到另外的工作表里?

A列满足条件的记录相同的有很多,如何在另1个工作表输入A列的条件后,把所有A列与所输入条件相符的记录全部列示在新的工作表上
Sub 查询()
Rows("2:2").Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWindow.SmallScroll Down:=65536
Selection.ClearContents
Range("J1").Select
Selection.Copy
Sheets("价格表").Select
ActiveWindow.SmallScroll Down:=-12
Selection.AutoFilter Field:=1, Criteria1:="J1", Operator:=xlAnd
Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
Sheets("查询").Select
Range("A1").Select
ActiveSheet.Paste
Range("I4").Select
End Sub
我录的宏,我把Criteria1:="J1",里的J1改成实际的条件可以出来,但是J1我不确认会是什么,这里的错误在哪里

1、在数据表格点

2、筛选条件列,如筛选A列包含“北京”的

3、点 “包含...”,在包含选项里填写“北京”

4、筛选结果为:

5、选中已筛选的区域,点“查找和选择...”-“定位条件...”

5、定位条件选“可见单元”

6、再 “复制”

7、到需要的地方,如Sheet2粘贴即可

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-02-16
兄弟或姐妹千万不要相信那些会编程的,我们要会还在这里玩什么啊。。你说的问题非常简单,用查找与引用最后一个函数,vlookup()这里面有四个量,第一叫你想找什么就是你的中这一的标识,第二个是从哪里找,当然得从一个全的表里找,第三个叫如果符合第一个条件那么显示第一列是几就写数据几。第四个就写0或false就可以了。非常实用的软件。
第2个回答  2013-02-17

这样的效果?

第3个回答  2013-02-16
你另一个工作表输入的条件是怎么样的?
你用高级筛选就做到你的需求了。
如果你一定要用VBA,可以用单元格事件完成,
以下代码在查询表的A1输入你的条件,就自动得到查询的结果(代码粘贴到查询表对应的编辑栏中)
Private Sub Worksheet_Change(ByVal Target As Range)
Dim arr, brr(), x&, y&, i&, str1$
If Target.Address = "$A$1" Then
str1 = Target.Value
arr = Sheets("价格表").UsedRange
For x = 1 To UBound(arr)
If arr(x, 1) = str1 Then
i = i + 1
ReDim Preserve brr(1 To UBound(arr, 2), 1 To i)
For y = 1 To UBound(arr, 2)
brr(y, i) = arr(x, y)
Next y
End If
Next x
Range("A3").Resize(65533, 255).ClearContents
Range("A3").Resize(UBound(brr, 2), UBound(brr)) = Application.Transpose(brr)
End If
End Sub本回答被网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网