首页 > 游戏数码 > 电脑 > EXCEL数据检索

EXCEL数据检索

   来源:秒知站    阅读: 3.1W 次
字号:

用手机扫描二维码 在手机上继续观看

手机查看

excel有强大的数据处理功能,但它的“查找”功能有些单一,不能将查找到的数据提出到一个新表中,也就无法满足一些用户的需要了。尤其是在平时积累了好多数据,当有一天,我们想从中查找一些感兴趣的数据并导出时,却发现EXCEL的自带“查找”功能满足不了我们的要求,那就试试下面的方法吧。
这个方法可以把检索到的数据提取出来到一个新表中,而且只要输入前一位或前几位就可以检索。
下面以“电话交费记录”为例做一个示范表格

步骤/方法

(01)第一步,准备数据表一共需要两个工作表,有原始数据的工作表起名为“1”,检索用的表起名为“2”。

EXCEL数据检索

(02)从格式上说,这两个表是相同的,所不同的只是在第一行。提示:原始数据表格的内容不一定和本例完全一样,只要检索表与原始数据表的格式一样就行了。表格做好后,就可以编辑VBA代码了。

EXCEL数据检索 第2张

(03)第二步,制做VBA代码选中“2”表,在下面标签名上点鼠标右键,选“查看代码”,调出这个表2的VBA窗口把代码粘贴进去

(04)代码如下:Dim aa As String '字符型Private Sub Worksheet_SelectionChange(ByVal Target As Range)enUpdating = False '禁止屏幕更新b = [c65536](xlUp)f b < 3 Then b = 3Sheets("2")e(Cells(3, 1), Cells(b, 11))rContents '先清除查询区域s = Sheets("1")e("j1") '数量(使用COUNTA确定数据记录行数)aa = Range("b1") '要查询的号码(完整或前几位)x1 = 3 '从第三行开始For x = 3 To s + 3n = Len(aa)w = Sheets("1")s(x, 3) '从表1中取一个C列号码赋值给变量wIf Len(w) >= n And Left(w, n) = aa Then '判断这个号码是否与要检索的相符For j = 1 To 10Cells(x1, j) = Sheets("1")s(x, j) '将相符号码的相关内容提取出来Next jx1 = x1 + 1End IfNextRange("b1")enUpdating = True '允许屏幕更新End Sub在代码中已经做了注释,有VBA基础的朋友很容易理解。

EXCEL数据检索 第3张

(05)第三步,完成验收最后就可以检验效果了,在表2的B1单元格中输入“860”回车后,就把所有前三个数字相符的电话号码检索出来了。同样,在B1格中输入数字“8”,就能把所有第一位是8的电话号码检索出来。

(06)这个示例表格完成了一个简单的检索,为了介绍方便,只做了对一列数据的检索,有兴趣的朋友可以在此基础上增加多列检索,实用性就更强了。

EXCEL数据检索 第4张

电脑网络
IT技术
互联网
电脑
摄影
手机
游戏