【问题标题】:How to split excel worksheet into multiple excel workbook如何将excel工作表拆分为多个excel工作簿
【发布时间】:2022-02-16 11:49:34
【问题描述】:
Sub SplitandFilterSheet()

Dim Splitcode As Range
Sheets("Sheet1").Select

Set Splitcode = Range("Splitcode")

For Each cell In Splitcode

Sheets("PO Line Item").Copy After:=Worksheets(Sheets.Count)

Set Sheet = Worksheets(Sheets.Count)
        
        Sheet.Name = cell.Value
        ActiveSheet.Name = cell.Value

With ActiveWorkbook.Sheets(cell.Value).Range("MasterData")

.AutoFilter Field:=14, Criteria1:="<>" & cell.Value, Operator:=xlFilterValues

.Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Delete
End With


ActiveSheet.AutoFilter.ShowAllData
Next cell
End Sub

【问题讨论】:

  • 到目前为止你尝试过什么代码?你在哪里遇到了麻烦?请在您的问题中包含这一点。
  • 请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: excel vba split worksheet


【解决方案1】:

下面的 VBA 代码可以帮助您快速将当前工作簿的多个工作表拆分为单独的 Excel 文件,请执行以下操作:

  1. 为要拆分的工作簿创建一个新文件夹,因为拆分后的 Excel 文件将保留在与此主工作簿相同的文件夹中。

  2. 在 Excel 中按住 ALT + F11 键,它会打开 Microsoft Visual Basic for Applications 窗口。

  3. 单击插入 > 模块,然后将以下代码粘贴到模块窗口中。

VBS 代码 //

Sub Splitbook()

Dim vis As Long, xPath As String, xWs As Worksheet

xPath = Application.ActiveWorkbook.Path

Application.ScreenUpdating = False

Application.DisplayAlerts = False



For Each xWs In ThisWorkbook.Sheets

vis = xWs.Visible

xWs.Visible = xlSheetVisible

xWs.Copy

Application.ActiveWorkbook.SaveAs Filename:=xPath & "\" & xWs.Name, _FileFormat:=xlOpenXMLWorkbook

Application.ActiveWorkbook.Close False

xWs.Visible = vis
Next
Application.DisplayAlerts = True

Application.ScreenUpdating = True
End Sub
  1. 按 F5 键运行此代码。并且工作簿被拆分为与原始工作簿位于同一文件夹中的单独 Excel 文件。

注意:如果其中一张工作表与工作簿同名,则此 VBA 无法工作。

【讨论】:

  • 非常感谢。我认为这段代码是将工作簿中的每张工作表拆分为不同的工作簿。但是,我的问题是按组拆分。所以电子表格中有一个名为“Pur Group”的列,根据它的值,例如 191。我喜欢将所有 191 个内容都放在一个工作簿中。 (两张表都有相同的列,称为“Pur Group”。我喜欢 191.xlsx 有 2 张只有“Pur Group”=191 的表。
  • 所以电子表格中有一个名为“Pur Group”的列,根据其值,例如 191。我喜欢将所有 191 放入一个工作簿中。 (两张表都有相同的列,称为“Pur Group”。我喜欢 191.xlsx 有 2 张表(PO LINE 项目和 PO GRIR),只有“Pur Group”=191。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-14
相关资源
最近更新 更多