VBA按关键词分组拆分Excel工作表

本文介绍了如何使用VBA在Excel中按关键词(如部门、性别等)拆分工作表。通过定义一维数组,利用字典去重,然后复制源工作表并根据部门名称重命名,最后删除非匹配部门的数据,实现工作表的智能拆分。提供的代码示例展示了按部门拆分的具体实现过程。
摘要由CSDN通过智能技术生成
  • 11
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以按照以下步骤使用VBA按某列汇总拆分工作: 1. 打开你想要拆分工作。 2. 在工作上方的菜单栏中选择“开发人员”选项卡。如果你没有看到该选项卡,则需要启用它。可以通过下列步骤:文件->选项->自定义功能区->勾选“开发人员”选项卡。 3. 点击“Visual Basic”按钮,打开Visual Basic编辑器。 4. 在编辑器中,依次展开“项目-VBAProject(VBA项目)”、“Microsoft Excel 对象”、“Sheet1(Sheet1)”,双击“Sheet1(Sheet1)”。 5. 在工作的代码窗口中输入以下代码: ``` Sub SplitData() Dim lastRow As Long Dim currentRow As Long Dim i As Long Dim currentName As String Dim ws As Worksheet Dim newWs As Worksheet Set ws = ThisWorkbook.Sheets("Sheet1") lastRow = ws.Range("A" & Rows.Count).End(xlUp).Row currentRow = 2 For i = 2 To lastRow If ws.Range("A" & i).Value <> currentName Then currentName = ws.Range("A" & i).Value Set newWs = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)) newWs.Name = currentName ws.Range("A1:D1").Copy newWs.Range("A1") currentRow = 2 End If ws.Range("A" & i & ":D" & i).Copy newWs.Range("A" & currentRow) currentRow = currentRow + 1 Next i End Sub ``` 6. 保存并关闭Visual Basic编辑器。 7. 回到工作并点击“开发人员”选项卡上的“”按钮。 8. 在弹出的对话框中选择“SplitData”,并点击“运行”。 这将按列A中的值拆分工作,并将每个唯一值的数据放入一个新的工作中。每个新工作的名称将是该值。请注意,此代码假设您的数据以列A开始,并且您的数据没有标题行。如果您的数据的列不同,请在代码中进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值