EXCEL如何将一个工作表根据条件拆分成多件工作表

以WPS 2019版本为例:

关于一个EXCEL如何将一个工作表根据条件拆分成多件工作表,您可使用WPS参考下述步骤完成操作:

1、打开「表格(Excel)」文档;

2、点击「数据-拆分表格」;

3、按需选择「把工作表按照内容拆分」或「把工作簿按照工作表拆分」使用即可。



生成表格是简单的,问题是你的日期,必须要是规范的日期格式(你可在空白单元格输入公式:=TODAY(),显示的就是规范的日期格式),否则真难操作啊!
操作上只要用一个数组公式即可,但是数据量大的话运算和计算反应会比较慢的

如何将一张工作表拆分成多个工作表?



excel如何将一个工作表根据条件拆分成多个工作表~

如何将一张工作表拆分成多个工作表?

操作步骤:


原始数据表如下(名称为:数据源),需要根据B列人员姓名拆分成每个人一个工作表。

点击【开发工具】-【Visual Basic】或者Alt+F11的快捷键进入VBE编辑界面。

如下图所示插入一个新的模块。


如下图,粘贴下列代码在模块中:
Sub CFGZB()
Dim myRange As Variant
Dim myArray
Dim titleRange As Range
Dim title As String
Dim columnNum As Integer
myRange = Application.InputBox(prompt:="请选择标题行:", Type:=8)
myArray = WorksheetFunction.Transpose(myRange)
Set titleRange = Application.InputBox(prompt:="请选择拆分的表头,必须是第一行,且为一个单元格,如:“姓名”", Type:=8)
title = titleRange.Value
columnNum = titleRange.Column
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim i&, Myr&, Arr, num&
Dim d, k
For i = Sheets.Count To 1 Step -1
If Sheets(i).Name "数据源" Then
Sheets(i).Delete
End If
Next i
Set d = CreateObject("Scripting.Dictionary")
Myr = Worksheets("数据源").UsedRange.Rows.Count
Arr = Worksheets("数据源").Range(Cells(2, columnNum), Cells(Myr, columnNum))
For i = 1 To UBound(Arr)
d(Arr(i, 1)) = ""
Next
k = d.keys
For i = 0 To UBound(k)
Set conn = CreateObject("adodb.connection")
conn.Open "provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0;data source=" & ThisWorkbook.FullName
Sql = "select * from [数据源$] where " & title & " = '" & k(i) & "'"
Worksheets.Add after:=Sheets(Sheets.Count)
With ActiveSheet
.Name = k(i)
For num = 1 To UBound(myArray)
.Cells(1, num) = myArray(num, 1)
Next num
.Range("A2").CopyFromRecordset conn.Execute(Sql)
End With
Sheets(1).Select
Sheets(1).Cells.Select
Selection.Copy
Worksheets(Sheets.Count).Activate
ActiveSheet.Cells.Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Next i
conn.Close
Set conn = Nothing
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

如下图所示,插入一个控件按钮,并指定宏到刚才插入的模块代码。


点击插入的按钮控件,根据提示选择标题行和要拆分的列字段,本例选择“姓名”字段拆分,当然也可以选择C列的“名称”进行拆分,看实际需求。




代码运行完毕后在工作簿后面会出现很多工作表,每个工作表都是单独一个人的数据。具体如下图所示:

注意:
1)原始数据表要从第一行开始有数据,并且不能有合并单元格;
2)打开工作簿时需要开启宏,否则将无法运行代码。

#18633061690# EXCEL 如何按条件拆分为多个工作表 - ******
#容亚# 最简单的选中这列然后按CTRL+H.输入名称替换.搞定

#18633061690# 急!急!如何将一张表上的内容按某项条件放入另外一张表的单独每页中 - ******
#容亚# EXCEL? 简单极了! 点击“与户主关”这一行前的序号成定义状态(成灰色),点击菜单栏上的“数据,筛选,自动筛选”,在一定义栏上(各列)会出现许多小箭头,点击小箭头会出现备选项,点击其中一个就会单独显示同一住址的一家....

#18633061690# EXCEL如何根据一个工作表在新的工作表出现相同数据并按顺序排列 ******
#容亚# 我可以做到,不过想知道你的表格是不是A列 姓名,B列 成绩,还是有其他的 如无公式如下在SHEET2的A2写入公式{=INDEX(Sheet1!$A$1:$B$1001,1000-MOD(LARGE(Sheet1!$B$2:$B$1001*10000+1000-ROW(Sheet1!$B$2:$B$1001),ROW(A1)),10000),COLUMN(A1))}后拉再下拉,其中{}为数组公式,写入时不要,按CTRL+SHLFT+ENTER三键同按会自动添加.

#18633061690# excel如何根据条件筛选后将符合条件相关区域的值全部列出 - ******
#容亚# 1.打开一个带有内容的Excel,如图,我们选中了A2:B17的单元格. 2.然后点击菜单栏的“开始”,找到工具栏的“条件格式”,点击下边的“新建规则”,然后进入条件设置界面. 3.选择只为包含以下条件的数值设置单元格格式,下边填写数值的范围,可以随意填写,这里为了让结果更明显,设置了10-20的筛选,然后单击格式. 4.这里设计成为筛选出的数据进行背景填充为红色,当然你也可以设置字体等等.5.然后点击确定,就可以看到被选中的区域中10-20的数据的背景被填充了红色,说明方法是可行的.

#18633061690# 在EXCEL里如何在1个单元格里将另外一个工作表对应字符的符合条件的数值全部汇总到新表格 ******
#容亚# 假定表2第1条“基本工资”记录起始于单元格区域C2:K2:在表1的E4单元格编辑公式=SUM(表2!C2:K2)回车确认.如果在表2中还有后续的“基本工资”记录,则单击E4单元格,鼠标指针指向右下角,当指针变成黑10字时,按住鼠标左键向...

#18633061690# Excel公式问题!如何从另一个Sheet中,根据指定值检索出匹配的多条记录,并在一个单元格里显示出来! ******
#容亚# 让我来告诉你答案!建议Sheet1中使用数据透视表 很多公式都必须要使用条件的第一列才能引用 操作方法:点击“数据”→选择“数据透视表和数据透视图”→点击“下一步”→选择你需要计算的区域→点击“下一步”→点击“布局”→将地区拖到“行”中将姓名拖到“数据”中即可满足

#18633061690# 如何使Excel的条形图 - ******
#容亚# 第1步在Excel中打开一个电子表格.在输入右边列的数据说明和直接添加到数据的描述左侧的列中的数据.添加行中的下一个数据直接输入下面的第一项.不留任何空白列或行之间的数据项. 第2步就在角落位于结束单元格中单击第一个或最后...

#18633061690# Excel问题请教在Excel工作表中,这个叫什么?怎样制作? ******
#容亚# 有效性设置说明: 1、拟好下拉框拟显示明细如F1:F9和G1:G15. 2、选中A1:A25,在“数据/有效性/设置/允许/序列/来源”,点来源框右侧拾数器红箭头,用光标选取F2:F9,点红箭头返回对话框,确定,即可完成A1:A25设定. 3、同样,可对B1:B25进行设置. 4、在A1:B25,选中任一单元格,即可用下拉箭头输入单位名称或发货量. 5、B列下拉框带有“发货量”三字,而A列下拉框不带“供货单位”几个字,是由于上述第2步选区不同所致,请分别选择A、B彩色区域,在“数据/有效性/设置/允许/序列/来源”中,查看选区的区别.

#18633061690# 如何用excel,把sheet1里的数据用vlookup自动处理到sheet2????? - ******
#容亚# “用excel,把sheet1里的数据用vlookup自动处理到sheet2”的操作步骤是:1、以Excel 2016为例,打开Excel工作表;2、根据已知条件,Sheet2的A列代码包含于Sheet1的A列,需要通过VLOOKUP函数将Sheet1中对应代码的数据引用到Sheet...

#18633061690# Excel工作表格怎么把一个格的其中一条线删除 - ******
#容亚# 你好,方法如下:1、选中这个单元格,右键——设置单元格格式——边框对话框中有个预览框.2、里面是一个格子,你点击任意一条边,就可以了.

为传递更多家电数码信息,若有事情请联系
数码大全网