Excel精英培训网

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

怎样同一工作薄里跨表取数

[复制链接]
发表于 2017-2-1 18:21 | 显示全部楼层 |阅读模式
看到一个图片,是跨工作薄取数的,怎样同一个工作簿跨表取数。

gif取数图

gif取数图
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2017-2-1 22:36 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2017-2-2 08:28 | 显示全部楼层
想用vba代码写一段,求大神支持。
回复

使用道具 举报

发表于 2017-2-2 11:44 | 显示全部楼层
其实很简单,

比如我们要取A1单元格的数据,直接 myStr=range("A1").value
这个Range前面省略了很多东西(父对象),那这些省略的代码会受你代码写的位置影响

为了不受影响,你加上父对象就好了,比如要取 汇总表A1单元格的数据,那就是
mystr=worksheets("汇总").range("A1").value

如果你打开了N多个工作薄,比如名称有 1月.xlsx,2月.xlsx ,汇总.xlsx,

这时候我们要把文件 1月,2月 里第一张工作表的A1单元格中的值取出来怎么写呢?

mystr1=workbooks("1月.xlsx").worksheets(1).range("A1").value
mystr2=workbooks("2月.xlsx").worksheets(1).range("A1").value

前题是这两个文件你都打开了,所以只需要在 Range 前面添加上父路径就好了!!

简单的比喻,kfc 在同一个城市可能有很多家店,你家附近就有一个,
那你会这样告诉你朋友,在我家这里的kfc里等你,这样他才知道你的具体位置一个道理


评分

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

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2017-2-2 18:20 | 显示全部楼层
疯哥,学习了,如果有几万条以上的数据,怎样代码提速呢,
回复

使用道具 举报

发表于 2017-2-2 19:32 | 显示全部楼层
yzxfelix 发表于 2017-2-2 18:20
疯哥,学习了,如果有几万条以上的数据,怎样代码提速呢,

具体情况具体分析,数组套字典比较通用
回复

使用道具 举报

 楼主| 发表于 2017-2-2 19:43 | 显示全部楼层
好的,先补充些数组和字典的知识。谢谢疯哥。
回复

使用道具 举报

 楼主| 发表于 2017-2-2 19:57 | 显示全部楼层
疯哥,看到你以前帖子了,真实感动啊,原来疯哥,早已沧海难为水了。膜拜。
Sub 汇总()
    Dim Arr, MyRow%, k%
    Dim dic As New Dictionary
    Arr = Range("A1").CurrentRegion.Value
    ReDim brr(1 To UBound(Arr), 1 To 2)
    For MyRow = 2 To UBound(Arr)
        If Not dic.Exists(Arr(MyRow, 1)) Then
            k = k + 1
            dic.Add Arr(MyRow, 1), k
            brr(k, 1) = Arr(MyRow, 1)
            brr(dic(Arr(MyRow, 1)), 2) = brr(dic(Arr(MyRow, 1)), 2) + Arr(MyRow, 2)
        Else
            brr(dic(Arr(MyRow, 1)), 2) = brr(dic(Arr(MyRow, 1)), 2) + Arr(MyRow, 2)
        End If
    Next MyRow
    Range("D2").Resize(UBound(brr), UBound(brr, 2)) = brr
End Sub
回复

使用道具 举报

 楼主| 发表于 2017-2-2 20:00 | 显示全部楼层
这个对话在一个博客上,小妮子的
004fa8MEzy6Ipmx594Dab&690.jpg
回复

使用道具 举报

 楼主| 发表于 2017-2-3 06:17 | 显示全部楼层

疯哥: 这句具体什么意思啊
result(s, j - 2) = result(s, j - 2) + arr(i, j)
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 15:30 , Processed in 0.369416 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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