查询两张表 然后把数据并在一起_工作表查询时,结合数组,实现分工作表数据归类汇总...

大家好,我们继续讲解VBA数据库解决方案,今日讲解第55讲内容:工作表查询时,结合数组,实现在工作表查询的同时,完成分工作表的归类汇总。今日的内容对于实际的工作非常重要,也是我根据实际的工作场景加工整理的一段代码。

实例问题:大家看我下面的工作表数据截图,每型号产品是给不同的生产厂生产的,供货的是不同的供应商,那么问题来了,我要实现分供应商把各个型号进行汇总,同时把供应商的分别放置在不同的工作表中,如何实现呢?

008775771567fc4db9d1ac23f7a3460b.png

我们先进行一下问题的分析:

1 在数据处理前我们要知道有多个供应商,而且这个数据是不固定的。

2 要根据供应商的数目,插入工作表。

3 要按照供应商的不同来提出数据,并讲提出的数据加入相应的工作表。

看起来很复杂,但确实是我们的工作实例了,如财务的工资表可以根据代码分部门;物流部门可以按此代码分供货商,销售部门可以按此代码进行客户的分类等。好了,还是看我提供的代码吧:

Sub mynzRecords_55() '第55讲 结合数组实现在工作表查询的同时,完成分工作表的归类汇总

Dim cnADO, rsADO As Object

Dim strPath, strSQL3, strSQL4 As String

Worksheets("55").Select

Cells.ClearContents

Set cnADO = CreateObject("ADODB.Connection")

strPath = ThisWorkbook.FullName

cnADO.Open "provider=Microsoft.ACE.OLEDB.12.0;extended properties='excel 12.0;hdr=yes;imex=1';data source=" & strPath

Arr = cnADO.Execute("Select Distinct 供应商 From [数据备份$]").GetRows

For k = 0 To UBound(Arr, 2)

strSQL = "Select 型号,数量,生产厂,单价 From [数据备份$] Where 供应商='" & Arr(0, k) & "'" & " order by 型号"

ActiveWorkbook.Sheets.Add after:=Worksheets("数据备份")

ActiveSheet.Name = Arr(0, k)

With Sheets(Arr(0, k))

[A1:D1] = Array("型号

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值