excel如何根据条件将工作表分成多个工作表?

更新时间:2023-03-19 12:15:35 作者:绿屋百科

  本例介绍在excel中如何将一个工作[工作的概念是劳动生产。]表根据条件拆分[可以组合成一个整体的不同部分,单独被分开的过程。]成多个工作表。

  注意:很多朋友反映sheets(i).delete这句代码[代码就是程序员用开发工具所支持的语言写出来的源文件,是一组由字符、符号或信号码元以离散形式表示信息的明确的规则体系。]出错,要注意下面第一个步骤,要拆分的数据工作表名称为“数据源[数据源是指数据库应用程序所使用的数据库或者数据库服务器。]”,而不是你新建工作簿时的sheet1这种。手动改成“数据源”即可。

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:= "请选择[我们每天都被五花八门的广告和巧舌如簧的营销人员搞得晕头转向;被时尚潮流牵着鼻子走,信用卡严重透支;苦苦挣扎于数不清的经济新闻和理财建议中,投资收益一塌糊涂;买来一本又一本自助类书籍,指望从中学会塑身美-xuanze]标题行:" , 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***nnection" )

  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

以上就是excel如何根据条件将工作表分成多个工作表?的相关介绍,希望能对你有帮助,如果您还没有找到满意的解决方式,可以往下看看相关文章,有很多excel如何根据条件将工作表分成多个工作表?相关的拓展,希望能够找到您想要的答案。

为您推荐

查看详情

  Express Tools的功能[功能是一个汉语词语,拼音为gōng néng,意指事物或方法所发挥的有利作用;效能。]不用多说,但是刚开始接触CAD的同学,在安装CAD的过程中,往往会取

2023-03-19 10:54

如何标注cad斜线?

  利用CAD文字[文字是一个汉语词汇,拼音为wén zì,基本意思是记录思想、交流思想或 承载语言的图像或符号。]的界标点[标点符号是辅助文字记录语言的一套符号。]及其右键快捷

2023-03-19 10:49

如何根据男女性别安排excel表格?

  随着信息时代[欧美及发达国家的时间跨度概念是从公元后1969年(1969AD)-未来,我国及部分发展中国家对信息时代指的是从公元后1984年(1984AD)-未来,比欧美晚了15年。]的发展,

2023-03-19 10:43

如何限制列单元格的输入内容?

  如何限定[限定是一个汉语词汇,基本意思是在数量、范围等方面加以规定。]号码列单元格[单元格是表格中行与列的交叉部分,它是组成表格的最小单位,可拆分或者合并。]输入限定

2023-03-19 10:42

EXCEL如何横向输入数据?

  EXCEL中我们经常要输入大量的数据[数据就是数值,也就是我们通过观察、实验或计算得出的结果。],有的时候由于固定格式的问题,难免会横向[横向拼音是héng xiàng,含义是平

2023-03-19 10:39

如何重置cad鼠标中键不能平移?

  在CAD作图时,鼠标[鼠标是一种很常用的电脑输入设备,分有线和无线两种。]中键(滚轮)多用着图像缩放[缩放的意思为:缩小和放大都自如。]及平移[平移,是指在平面内,将一个图

2023-03-19 10:34