如何将Excel每一张工作表转换成单独的工作薄?

2024-12-14 03:11:18
推荐回答(5个)
回答1:

  将Excel每一张工作表转换成单独的工作薄的方法:

  1. 右击工作表名,点选“移到或复制”;

  2. 选择“新工作簿”,如果是复制则勾选“建立副本”;

  3. 确定后,即建立了一个仅包含移动或复制的工作表的新工作簿,可依次右击其它工作表标签,用同样的方法得到其它新工作簿。

回答2:

这个需要使用代码来拆分比较快一些。
在你需要拆分的工作簿中新建一个模块,将下面的代码复制模块中,然后执行就行。

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

回答3:

点击要转成单独的Excel的表---右健点标签------点“移动或复制工作表”----点工作薄下拉“新工作薄”----确定即可

回答4:

设置宏,录制步骤,移动或复制工作表,新工作表,命名保存,

回答5:

上楼的手工操作太朴素了,教楼主一个好方法,使用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的宏,先录制一个,然后再把代码贴上去,就简单多了,这个操作可以到网上去找找,很简单的,不会再追问。

亲测有效,来源:批量将工作表转为工作簿

【可以到上面链接里复制粘贴代码,发现这里粘贴出来格式有点问题】