[原创]商品工作人员必备技能(第一节)EXCEL多表合并或订单汇总
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[原创]商品工作人员必备技能(第一节)EXCEL多表合并或订单汇总
日常工作中经常遇到N个相同文件的内容要做汇总,或者每次订货会结束后,都会有很多订单被导成EXCEL文件,我们要汇总订单就很难,以前都是一个一个复制粘贴,效率低而且很容易出错,下面介绍一下用VBA语句合并多个表格的操作。
第一步:新建一个文件夹,将所有订单复制到这个文件夹里。
第二步:在文件夹里面新建一个excel文件并打开
第三步:在打开的excel文件中,在工作簿标签上右键单击,在弹出的菜单中选中,查看代码。
第四步:将汇总的VB语句粘贴到VB编辑器内,然
后点击绿色按钮或者F5执行语句。
第五步:语句执行结束后会有提示,单击确定就可以了。
第六步:删除VB语句,并关闭VB编辑器。
第七步:按照需要修改复制到文件内的数据格式,达到自己的要求或者根据需要进行数据处理。
最后分享汇总语句如下:
一、多表合并订单合并只复制文档内容
Sub Macro1()
Dim MyPath$, MyName$, lc&, m&, sh As Worksheet
Set sh = ActiveSheet
MyPath = ThisWorkbook.Path & "\"
MyName = Dir(MyPath & "*.xls")
Application.ScreenUpdating = False
edRange.Clear
Do While MyName <> ""
If MyName <> Then
m = m + 1
With GetObject(MyPath & MyName)
With .Sheets(1)
If m = 1 Then
.UsedRange.Copy sh.Cells(1, 1)
Else
.UsedRange.Copy sh.Cells(65536, 1).End(xlUp).Offset(1)
' .UsedRange.Offset(4).Copy sh.Cells(65536,
1).End(xlUp).Offset(1)'如果后面的不要表头用这一句
End If
End With
.Close False
End With
End If
MyName = Dir
Loop
Application.ScreenUpdating = True
MsgBox "完毕"
End Sub
二、多表合并订单汇总,会在表格内显示文件名
Sub Macro1()
Dim MyPath$, MyName$, lc&, m&, sh As Worksheet
Set sh = ActiveSheet
MyPath = ThisWorkbook.Path & "\"
MyName = Dir(MyPath & "*.xls")
Application.ScreenUpdating = False
edRange.Clear
Do While MyName <> ""
If MyName <> Then
m = m + 1
With GetObject(MyPath & MyName)
With .Sheets(1)
If m = 1 Then
.UsedRange.Copy sh.Cells(1, 2)
sh.Cells(1, 2) = MyName
Else
sh.Cells(sh.Cells(65536, 2).End(xlUp).Row + 1, 1) = MyName
.UsedRange.Copy sh.Cells(65536, 2).End(xlUp).Offset(1)
' .UsedRange.Offset(4).Copy sh.Cells(65536,
1).End(xlUp).Offset(1)'如果后面的不要表头用这一句 End If
End With
.Close False
End With
End If
MyName = Dir
Loop
Application.ScreenUpdating = True
MsgBox "完毕"
End Sub