Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2244|回复: 2

[已解决]求教设计一个提取清单

[复制链接]
发表于 2015-5-30 16:27 | 显示全部楼层 |阅读模式
本帖最后由 wingotoo 于 2015-5-31 16:07 编辑

如图 我有一个sheet数据表
01.jpg
人员编号是文本

然后我在提取值里面输入
02.jpg

通过一个宏按钮就可以生成名字为 提取清单1的sheet,并筛选出此时A1显示的(113编号)的所有数据。如下图
03.jpg

请老师指点
如何提取清单.rar (7.88 KB, 下载次数: 10)
发表于 2015-5-30 17:00 | 显示全部楼层    本楼为最佳答案   
本帖最后由 as0810114 于 2015-5-30 17:02 编辑
  1. Sub 提取()
  2.     Application.DisplayAlerts = False
  3.     Dim arr, brr(1 To 100000, 1 To 10)
  4.     Dim irow, icol, k
  5.     arr = Sheets("数据表").Range("a1").CurrentRegion
  6.     For Each Sheet In Sheets
  7.         If Sheet.Name = Sheets("提取值").Range("B1") Then Sheet.Delete
  8.     Next
  9.     Sheets.Add after:=Sheets(Sheets.Count)
  10.     Sheets(Sheets.Count).Name = Sheets("提取值").Range("B1")
  11.     Sheets("数据表").Range("a1:j1").Copy Sheets(Sheets.Count).Range("a1")
  12.     For irow = 2 To UBound(arr)
  13.         If arr(irow, 2) - Sheets("提取值").Range("A1") = 0 Then
  14.             k = k + 1
  15.             For icol = 1 To UBound(arr, 2)
  16.                 brr(k, icol) = arr(irow, icol)
  17.             Next
  18.         End If
  19.     Next
  20.     Sheets(Sheets.Count).Range("A2").Resize(irow, 10) = brr
  21.     Application.DisplayAlerts = True
  22. End Sub
复制代码
回复

使用道具 举报

发表于 2015-6-1 12:30 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-7 15:54 , Processed in 0.192871 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表