Excel精英培训网

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

[VBA] VBA三个工作表汇总出错如何改 用数组不要用find

[复制链接]
发表于 2016-11-7 13:33 | 显示全部楼层 |阅读模式
VBA三个工作表汇总出错如何改  用数组不要用find

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2016-11-8 11:03 | 显示全部楼层
改错后结果输出在A列,不用find用数组结果输出在B列。
  1. Sub 用数组合并()
  2.     Dim i%, Row%, Row1%, n%, arr(), jls&, brr, tj
  3.     Dim Sht As Worksheet
  4.     For Each Sht In Sheets
  5.         If Sht.Name <> "汇总" Then
  6.             Row = Sht.[a65536].End(xlUp).Row
  7.             jls = jls + Row
  8.             brr = Sht.Range("a1:a" & Row)
  9.             ReDim Preserve arr(1 To jls)
  10.             tj = Sht.Range("b2")
  11.             For i = 3 To UBound(brr)
  12.                 If brr(i, 1) = tj Then
  13.                     n = n + 1
  14.                     arr(n) = brr(i, 1)
  15.                 End If
  16.             Next
  17.         End If
  18.     Next Sht
  19.     Sheets("汇总").Activate
  20.     Range("b1:b" & n) = Application.Transpose(arr)
  21. End Sub
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1 +3 收起 理由
laoau138 + 3 来学习

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2016-11-8 11:21 | 显示全部楼层
grf1973 发表于 2016-11-8 11:03
改错后结果输出在A列,不用find用数组结果输出在B列。

果然是高手
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-26 08:33 , Processed in 0.312546 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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