将Excel每一张工作表转换成单独的工作薄的方法:
右击工作表名,点选“移到或复制”;
选择“新工作簿”,如果是复制则勾选“建立副本”;
确定后,即建立了一个仅包含移动或复制的工作表的新工作簿,可依次右击其它工作表标签,用同样的方法得到其它新工作簿。
这个需要使用代码来拆分比较快一些。
在你需要拆分的工作簿中新建一个模块,将下面的代码复制模块中,然后执行就行。
Sub 拆分到工作簿()
Dim wk As Workbook, ss$, k%
Application.DisplayAlerts = False
For Each sht In ThisWorkbook.Sheets
Set wk = Workbooks.Add
k = k + 1
ThisWorkbook.Sheets(k).Copy Workbooks(2).Sheets(1)
ss = ThisWorkbook.Path & "\" & sht.Name & ".xlsx"
wk.SaveAs ss
wk.Close
Next
Application.DisplayAlerts = True
MsgBox "拆分工作簿完成!"
End Sub
点击要转成单独的Excel的表---右健点标签------点“移动或复制工作表”----点工作薄下拉“新工作薄”----确定即可
设置宏,录制步骤,移动或复制工作表,新工作表,命名保存,
上楼的手工操作太朴素了,教楼主一个好方法,使用VBA来处理,就简单多了。
基本操作请看动画视频:
动画中所粘贴的代码如下:
Sub newbooks()
Dim sht As Worksheet, mypath$
Application.DisplayAlerts = False
'取消显示系统警告和消息
Application.ScreenUpdating = False
'取消屏幕刷新
With Application.FileDialog(msoFileDialogFolderPicker)
'选择保存工作薄的文件路径
.AllowMultiSelect = False
'不允许多选
If .Show Then
mypath = .SelectedItems(1)
'读取选择的文件路径
Else
Exit Sub
'如果没有选择保存路径,则退出程序
End If
End With
If Right(mypath, 1) <> "\" Then mypath = mypath & "\"
For Each sht In Worksheets
'遍历工作表
sht.Copy
'复制工作表,工作表单纯复制后,成为活动工作薄
With ActiveWorkbook
.SaveAs mypath & sht.Name, xlWorkbookDefault
'保存活动工作薄到指定路径下
.Close True '关闭工作薄
End With
Next
MsgBox "处理完成。", , "提醒"
Application.ScreenUpdating = True '恢复屏幕刷新
Application.DisplayAlerts = True '恢复显示系统警告和消息
End Sub
另外,如果不会VBA的小同学,可以找到excel的宏,先录制一个,然后再把代码贴上去,就简单多了,这个操作可以到网上去找找,很简单的,不会再追问。
亲测有效,来源:批量将工作表转为工作簿
【可以到上面链接里复制粘贴代码,发现这里粘贴出来格式有点问题】