求合并工作簿的VBA,工作簿中含有很多公式,有什么好的办法吗? 100

图一是要合并的工作簿,图二是工作簿的内容,每个工作簿包含两个工作表,我只想把“汇总”工作表进行合并,但是有这么几个问题1、“汇总”工作表中有很多信息是不需要合并的,比如合... 图一是要合并的工作簿,图二是工作簿的内容,每个工作簿包含两个工作表,我只想把“汇总”工作表进行合并,但是有这么几个问题1、“汇总”工作表中有很多信息是不需要合并的,比如合计行之后的行都可以不合并(如果非要合并我也能接受。2、“汇总”工作表中有很多公式,也有一些是运用vlookup引用了“供应商资料"的数据,所以用vba合并起来有点麻烦。3、就是那个提示,禁止自动更新。4、图3是具体的公式位置,蓝色部分是vlookup,绿色部分是sum 展开
 我来答
阳光上的桥
2021-10-01 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21423 获赞数:65812
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部

合并时去除公式,以当时的结果为最终结果,无需合并后重新VLOOKUP。打开的文件的时候可以带参数禁止提示是否更新。示例代码如下图:

代码文本如下:

Option Explicit


Sub 合并工作簿()

    Dim st As Worksheet, arr, n, i, p, f

    Set st = ActiveSheet '数据合并到的结果工作表

    p = "d:\需要合并的文件所在的文件夹\" '必须以\结尾

    f = Dir(p & ".xls?")

    While f <> ""

        With Workbooks.Open(p & f, False, True) '只读、不更新打卡扫描到的文件

            n = st.UsedRange.Rows.Count '汇总结果表已有行数

            i = .Sheets("汇总").UsedRange.Rows.Count

            If n = 1 Then

                '汇总表为,合并的第一个文件

                arr = .Sheets("汇总").Range("a1").Resize(i - 14, 20) '获取A1开始的内容,去掉合计开始的14行

            Else

                '后续文件

                n = n + 1

                arr = .Sheets("汇总").Range("a3").Resize(i - 16, 20) '获取A3开始、合计之前的行

            End If

st.Cells(n, 1).Resize(UBound(arr), UBound(arr, 2)) = arr '文件中的内容以数值方式填入汇总表

            .Close False '关闭文件,不保存

        End With

        f = Dir

    Wend

End Sub

chixun99
2021-09-30 · TA获得超过706个赞
知道小有建树答主
回答量:464
采纳率:87%
帮助的人:164万
展开全部

用vba并不麻烦,提供个思路:新建一个“汇总”工作表的合并表(后边简称合并表),格式跟“汇总”那个表格是一样的,中间数据行是可以根据你需要合并的数据量变化的,在所有合并工作簿的文件夹中(当然最好这个文件夹是指定唯一的),在每个待合并工作簿里查询汇总的数据,直接复制过来合并表中(仅仅复制数据,无任何公式的),循环一次就可以搞定了。你看看这个思路是否能解决你的问题。截图就是大致思路的结果示意。

追问
你的思路非常好,正是我要的效果,但是我不会敲代码,有时间帮忙敲一下吗?财富值可以给足
追答
没有参考格式的表,打代码时间花费多。你自己先试试吧。有了个初稿,后边很容易的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
skyzxh

2021-09-30 · 知道合伙人软件行家
skyzxh
知道合伙人软件行家
采纳数:2623 获赞数:8344
毕业于中科院,硕士,30年工程从业经验。现任公司技术负责。

向TA提问 私信TA
展开全部
vba只读取数值,并不读公式,有啥麻烦的?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
萌新资格证书
2021-09-30 · 作为一个喜欢科学的萌新,路漫漫其修远兮
萌新资格证书
采纳数:32 获赞数:50

向TA提问 私信TA
展开全部
不给数据,怎么对症下药
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式