欢迎光临河南某某机械有限公司官网!
印后加工设备源头制造某某高新技术企业 欧盟标准 双效合一
全国咨询热线:0804-769059483
当前位置:主页 > 新闻资讯 > 公司动态 >

Excel | VBA--凭据订单号跨多事情表查询数据

时间:2022-05-05 00:28:02 来源:kok官网登录 点击:

本文摘要:问题情景Excel跨多个事情表查询数据,用公式欠好统计,尤其是遇到不停增加事情表的情况,好比:上图中,要凭据订货单号选择相应的货名、数量、单元、单价等信息。而这些订货单号对应货名平分布在差别的9个事情表中,而且事情表还在不停增加。 在这种情况下,公式显得有些苍白无力,就需要用VBA来完成跨表查询。

kok在线登录网址

kok在线登录网址

问题情景Excel跨多个事情表查询数据,用公式欠好统计,尤其是遇到不停增加事情表的情况,好比:上图中,要凭据订货单号选择相应的货名、数量、单元、单价等信息。而这些订货单号对应货名平分布在差别的9个事情表中,而且事情表还在不停增加。

在这种情况下,公式显得有些苍白无力,就需要用VBA来完成跨表查询。实现效果如下:VBA实现在代码窗口中输入以下代码:Sub 多表查询()Dim i%, k%Dim irow%, icol%Dim sht As WorksheetRange("a5:e200").Clear '清除a5到e200区域中的数据,此处200可凭据数据行几多改变k = 1Application.ScreenUpdating = FalseFor Each sht In Worksheets If sht.Name <> ActiveSheet.Name Then '当事情表不是当前事情时,执行以下语句 With sht irow = .Cells(.Rows.Count, 1).End(xlUp).Row '当前事情表数据行数 icol = .Cells(1, .Columns.Count).End(xlToLeft).Column '当前事情表数据列数 For i = 1 To irow If .Cells(i, 1).Value = Sheets(1).Cells(2, 5).Value Then '当前事情表是第一列i行数据与sheet1事情表E2单元格数值相同时 .Cells(i, 2).Resize(1, icol).Copy Sheets(1).Cells(4 + k, 1) '将第i行数据复制到sheet1事情表第4+k行 k = k + 1 End If Next i End With End IfNextApplication.ScreenUpdating = TrueEnd Sub如下图:如果不知道“按订货单号查询”按钮怎么设置,可参考文章Excel | 让“宏”来替你做重复行动-----------------------------------------------------------------------------------加入圈子,一起学习office吧!(此处已添加圈子卡片,请到今日头条客户端检察)。


本文关键词:Excel,VBA--,凭据,订单号,跨多,事情,表,查询,kok官网

本文来源:kok在线登录网址-www.shangshengzi.com

在线客服
联系方式

热线电话

14126462791

上班时间

周一到周五

公司电话

0804-769059483

二维码
线