如何用VBA语言将多个EXCEL表中不同sheet表汇总到一个excel的不同sheet表中

有excel1和excel2等多个excel表,分别各有4个sheet,如何快速将这这些excel表中的sheet表分别合并放在一个EXCEL中的4个sheet中。... 有excel 1和excel 2等多个excel表,分别各有4个sheet,如何快速将这这些excel表中的sheet表分别合并放在一个EXCEL中的4个sheet中。 展开
 我来答
yesyes科
2020-03-24 · TA获得超过2.6万个赞
知道答主
回答量:608
采纳率:0%
帮助的人:9.2万
展开全部

1、打开需要汇总分析的Excel表格,选择Excel表格上方的“开发工具”选项。

2、然后点击“宏”按钮进行程序编写。

3、然后输入汇总程序的名称,点击编辑按钮。

4、写入程序代码,这里利用的是Do loop until和IF then 语句。汇总的要求为筛选出表格中男性、本科学历、在岗人员的名单。

5、在开发工具选项中选择插入一个按钮控件。

6、选中插入的按钮控件,单击鼠标右键选择“指定宏”选项。

7、将编写的汇总程序制定至按钮控件上,然后点击确定按钮。

8、点击按钮控件即可利用ExcelVBA程序完成对表格的汇总分析。

悲画扇
推荐于2017-08-30 · 知道合伙人金融证券行家
悲画扇
知道合伙人金融证券行家
采纳数:176 获赞数:2180
本人努力学习专业课程,很好的掌握专业知识,建立了系统的专业知

向TA提问 私信TA
展开全部

一:看上图,打开工作表,-开发工具-VB工具-双击模块1-复制代码-保存!

代码如下:

Sub 合并当前工作簿下的所有工作表()

Application.ScreenUpdating = False

For j = 1 To Sheets.Count

If Sheets(j).Name <> ActiveSheet.Name Then

X = Range("A65536").End(xlUp).Row + 1

Sheets(j).UsedRange.Copy Cells(X, 1)

End If

Next

Range("B1").Select

Application.ScreenUpdating = True

MsgBox "当前工作簿下的全部工作表已经合并完毕!", vbInformation, "提示"

End Sub

二:

按照上图操作,完成即可!

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
恭念垒0
2016-05-09 · 知道合伙人软件行家
恭念垒0
知道合伙人软件行家
采纳数:99 获赞数:195
VBA设计

向TA提问 私信TA
展开全部
你的说明并不是很具体,如下是我以前写的一个数据处理和你的需求差不多,你可以参考:
Sub ImpotData()
Dim a As Long 'progress dispaly
Application.ScreenUpdating = False
Application.ShowWindowsInTaskbar = False
On Error Resume Next
Dim DataPath As String, DataFileName As String, DataFileNameCut As String, DataFileNameShort As String, localName As String, Char1 As String, Char2 As String
Dim ColumnsCount As Long, RowsCount As Long, JumperCount As Long
FileNo = FreeFile()
DataPath = InputBox("input the data path", "path", "")
If DataPath = "" Then
End
Else
DataPath = DataPath & "\"
End If
DataFileName = Dir(DataPath)
DataFileNameCut = Left(DataFileName, Len(DataFileName) - 4)
localName = ThisWorkbook.Name
ColumnsCount = 1
RowsCount = 4
Range("J1") = DataPath
If DataPath <> "" Then
While Len(DataFileName) <> 0
Open DataPath & DataFileName For Input As #FileNo
While Not EOF(FileNo)
Line Input #FileNo, Char1
'此处写入数据写入sheet中的位置,如; cell(RowsCount,1)=Char1
End If
RowsCount = RowsCount + 1
Wend
Close #FileNo
ColumnsCount = ColumnsCount + 3
DataFileName = Dir
End If
a = a + 1
Wend
End If
Application.ScreenUpdating = True
Application.ShowWindowsInTaskbar = True
End Sub
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
饿咬7
2016-05-08 · TA获得超过155个赞
知道小有建树答主
回答量:741
采纳率:0%
帮助的人:185万
展开全部
格式都一样的话 我可以帮你解决
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liudefei2002fl
2016-05-08 · 超过21用户采纳过TA的回答
知道答主
回答量:99
采纳率:0%
帮助的人:37.3万
展开全部
这个根据不同的内容肯定有不同的写法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式