怎样把很多行的excel行与行重叠表格分开来?


选择擅长的领域继续答题?
{@each tagList as item}
${item.tagName}
{@/each}
手机回答更方便,互动更有趣,下载APP
提交成功是否继续回答问题?
手机回答更方便,互动更有趣,下载APP
使用vba代码可完成。代码如下:Sub 拆分()Dim ws As WorksheetFor Each ws In WorksheetsWorkbooks.Add.SaveAs ThisWorkbook.Path & "\" & ws.NameWorksheets.Add.Name = ws.Namews.UsedRange.Copy [a1]ActiveWorkbook.Close 1NextEnd Sub或者是:Sub 复制()Dim ws As WorksheetFor Each ws In WorksheetsWorkbooks.Add.SaveAs ThisWorkbook.Path & "\" & ws.Namews.Copy Worksheets(1)ActiveWorkbook.Close 1NextEnd Sub
}
知识改变命运,科技成就未来。在使用Microsoft Excel统计数据时,一般情况下会将各类数据汇总到一个工作表中。当需要分类数据时,使用【筛选】功能的话重复性操作太多,还需要将筛选后的数据进行复制粘贴,有什么办法能够按条件快速的将总表数据拆分成多个工作表?这个时候就需要用到强大的Visual Basic for Applications(VBA)了。Microsoft Excel按条件快速将总表数据拆分成多个工作表详细操作流程:第一步:左键双击打开素材文件【将总表数据拆分成多个工作表.xlsx】Microsoft Excel工作表。要编辑VBA代码,首先我们需要打开【Visual Basic编辑器】,右键单击【总表】工作表,左键单击右键菜单中的【查看代码(V)】即可打开【Visual Basic编辑器】。第二步:编辑VBA代码。左键单击【工程资源管理器】中的【Sheet1 总表】后,在右侧代码窗口中键入以下代码,您也可以选择复制粘贴。代码输入完成后,不需要保存,直接关闭【Visual Basic编辑器】即可。Sub NewSheets()Dim d As Object, sht As Worksheet, arr, brr, r, kr, i&, j&, k&, x&Dim Rng As Range, Rg As Range, tRow&, tCol&, aCol&, pd&Application.ScreenUpdating = FalseApplication.DisplayAlerts = FalseSet d = CreateObject("scripting.dictionary")Set Rg = Application.InputBox("请您框选拆分依据列!只能选择单列单元格区域!", Title:="提示", Type:=8)tCol = Rg.ColumntRow = Val(Application.InputBox("请您输入总表标题行的行数?"))If tRow = 0 Then MsgBox "您未输入标题行行数,程序退出!": Exit SubSet Rng = ActiveSheet.UsedRangearr = RngtCol = tCol - Rng.Column + 1aCol = UBound(arr, 2)For i = tRow + 1 To UBound(arr)If Not d.exists(arr(i, tCol)) Thend(arr(i, tCol)) = iElsed(arr(i, tCol)) = d(arr(i, tCol)) & "," & iEnd IfNextFor Each sht In WorksheetsIf d.exists(sht.Name) Then sht.DeleteNextkr = d.keysFor i = 0 To UBound(kr)If kr(i) <> "" Thenr = Split(d(kr(i)), ",")ReDim brr(1 To UBound(r) + 1, 1 To aCol)k = 0For x = 0 To UBound(r)k = k + 1For j = 1 To aColbrr(k, j) = arr(r(x), j)NextNextWith Worksheets.Add(, Sheets(Sheets.Count)).Name = kr(i).[a1].Resize(tRow, aCol) = arr.[a1].Offset(tRow, 0).Resize(k, aCol) = brrRng.Copy.[a1].PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False.[a1].SelectEnd WithEnd IfNextSheets(1).ActivateSet d = NothingErase arr: Erase brrMsgBox "数据拆分完成!"Application.ScreenUpdating = TrueApplication.DisplayAlerts = TrueEnd Sub第三步:按条件快速将总表数据拆分成多个工作表使用流程。首先我们需要在菜单栏中显示【开发工具】。显示【开发工具】详细操作流程请参照:PPT小技巧:如何把视频嵌入到PPT演示文稿中合并成一个文件?PPT和Excel操作流程基本一致。左键单击菜单栏中的【开发工具】选项卡,左键单击【代码】功能区中的【宏】按钮。第四步:左键单击选中【宏】对话框中的【Sheet1.NewSheets】后,左键单击【执行(R)】按钮。第五步:素材中拆分工作表的条件是【班级】,左键单击【A】列后,【提示】对话框中的文本框会自动生成单元格区域【$A:$A】,左键单击【确定】按钮即可进行下一步操作。备注:也可长按鼠标左键圈选单元格区域,在圈选单元格区域时,无蚂蚁线作为提示,圈选完成后请核对圈选区域是否正确。第六步:在【输入】对话框的文本框中,键入总表标题行的行数,素材中标题行的行数为【1】,所以键入的数字为【1】,键入完成后,左键单击【确定】按钮。拆分完成后会有【数据拆分完成!】的提示框,左键单击【确定】按钮即可完成总表的拆分。第七步:按条件快速将总表数据拆分成多个工作表效果展示。至此,Microsoft Excel按条件快速将总表数据拆分成多个工作表操作流程已全部结束。知识改变命运,科技成就未来。希望这个小知识能给您的工作和生活带来更多的便捷。如有疑问或建议,请在下方留言。点击关注,有更多科技知识等着您,谢谢您的支持。}

我要回帖

更多关于 excel行与行重叠 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信