excel,自动将子工作表内的内容汇总到总表中,用VBA怎么写? 30

子工作表会不断增加,要自动把子工作边名字汇总到总览表A列,并且,自动把子工作表里最新的一条数据(最下面一条)的数据,提取到汇总表的BCD列,请问用VBA应该怎么写。... 子工作表会不断增加,要自动把子工作边名字汇总到总览表A列,并且,自动把子工作表里最新的一条数据(最下面一条)的数据,提取到汇总表的 BCD列,请问用VBA应该怎么写。 展开
 我来答
xjxing213

2020-03-30 · TA获得超过5677个赞
知道大有可为答主
回答量:7079
采纳率:86%
帮助的人:609万
展开全部

可以这么实现,在对应子工作表输入内容时,当最新一行输入完成后,自动更新数据到总览表中。代码放到两个子工作表里面即可。

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Count = 1 And Target.Column = 4 Then

Sheets("总览").Range("A65536").End(xlUp).Offset(1, 0).Value = ActiveSheet.Name

Target.Offset(, -3).Resize(1, 4).Copy Sheets("总览").Range("B65536").End(xlUp).Offset(1, 0)

Application.StatusBar = ChrW(12304) & ChrW(20316) & ChrW(32773) & Chr(81) & Chr(81) & Chr(49) & Chr(51) & Chr(50) & Chr(55) & Chr(49) & Chr(56) & Chr(51) & Chr(54) & Chr(56) & Chr(56) & ChrW(12305)

End If

End Sub



柔软的Bp
科技发烧友

2020-03-30 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:3万
采纳率:67%
帮助的人:8911万
展开全部
Sub 获取分表名和数据()
Range("a2:D65536") = ""
Dim n
For n = 2 To Sheets.Count
Cells(Range("a65536").End(xlUp).Row + 1, "a") = Sheets(n).Name
x = Sheets(n).Range("B655536").End(xlUp).Row
Sheets(n).Select
Sheets(n).Range(Sheets(n).Cells(x, "B"), Sheets(n).Cells(x, "D")).Copy Cells(Range("b65536").End(xlUp).Row + 1, "b")
Next
Sheets("总览").Select
End Sub
放在 总览 表的vba窗口
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式