河南某某视频监控有限公司欢迎您!

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

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

亚博游戏娱乐平台

问题情景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--,凭据,订单号,跨多,事情,表,查询,亚博电子游戏平台

本文来源:亚博游戏娱乐平台-www.wxjgqg.com

相关产品推荐

在线客服 :

服务热线:056-748457627

电子邮箱: admin@wxjgqg.com

公司地址:云南省丽江市新会区人蒂大楼83号

亚博游戏娱乐平台在系统化的工作流程基础上,提供以工业设计为核心的品牌价值链整合服务,一站式服务内容包括:产品设计研究、产品差异化定位、工...

Copyright © 2006-2021 www.wxjgqg.com. 亚博游戏娱乐平台科技 版权所有