拆分一个单元表为多个单元簿
来源:互联网 发布:猫咪益生菌 知乎 编辑:程序博客网 时间:2024/06/05 18:04
方案1(数据透视表实现)
“数据透视表”按指定字段统计,获得数据透视表
点击数据透视表中指定字段的值打开对应值的明细表
批量修改已打开的工作表名
Sub changename()
MsgBox “共有sheets” & Worksheets.Count & “个”
For i = 9 To (Worksheets.Count)
nname = Worksheets(i).Range(“B2”).Value ‘Range(“B2”)为要作为表名的单元格的位置
If nname <> “” Then
Worksheets(i).Name = nname
Else
MsgBox “此处为空”
Worksheets(i).Name = “default”
End If
Next
MsgBox “done!”
End Sub拆分工作表为多个工作簿(同样适用于方案二)
Sub Splitbook()
Dim xPath As String ‘工作簿所在路径
xPath = Application.ActiveWorkbook.Path ‘赋值为当前活跃工作簿所在位置
Application.ScreenUpdating = False ‘关闭更新以提高运行效率
Application.DisplayAlerts = False ‘关闭关闭excel时弹出的提示框
For Each xWs In ThisWorkbook.Sheets ‘遍历工作簿中的工作表
xWs.Copy ‘复制工作表
Application.ActiveWorkbook.SaveAs Filename:=xPath & “\” & xWs.Name & “.xls” ‘保存工作表到当前工作簿所在目录
Application.ActiveWorkbook.Close False ‘关闭工作簿但不保存
Next
Application.DisplayAlerts = True ‘恢复设置
Application.ScreenUpdating = True
End Sub
方案2(待实现.用VBA实现)
- 选取待拆分工作表中关键字列
- 创建一个字典对象,用来存储关键字值与其统计
遍历关键字列
每当有新值出现
- 在字典中插入一组键值对
- 以该值为表名在当前表之后新建一个工作表
- 同时复制当前行到新表,代码如下
'复制行到目标位置(取首个单元格即可)
sheets("oldsheet").range(cells(2,1),cells(2,lastcolumn)).copy _destination:= sheets("newsheet").range[cells(2,1)]
'获取主表最后一列非空列的列序号
lastcolumn = sheets("oldsheet").cells(2,225).end(xlToLeft).column
'获取主表最后一行非空行的行序号
lastrow = sheets("oldsheet").cells(65536,1).end(xlUP).row
遍历到的值在字典中已存在key,则对应item加1,同时复制该行到对应表的非空的最后一行之后
- 拆分单元表到单元簿(同方案1最后一步)
方案3(用ADO和SQL直接查询拆分)
- 拆分一个单元表为多个单元簿
- 单元
- 拆分一个字段为多个字段
- 拆分一个Excel文件为多个
- php-Arrays 函数-array_rand-从数组中随机取出一个或多个单元
- php-Arrays 函数-array_unshift-在数组开头插入一个或多个单元
- 合并datagrid单元个格
- 如何把一个PDF文档拆分为多个文档
- 一个控制打印机的单元
- 合并多个工作簿为一个工作簿和拆分工作簿为多个工作簿
- 向网站中加入多个广告单元可以吗
- php从二维数组随机取出多个单元
- 两个或多个数组的单元合并起来
- C#将一个excel工作表根据指定范围拆分为多个excel文件
- 字符串拆分为一个表
- 如何将多个vmdk文件合并为一个或者将一个vmdk文件拆分为多个
- 自定义一个控制打印机的单元
- 上完一个单元后进行考试
- File System 文件系统模块
- 通讯协议
- MacroSoft数据集MS-Celeb-1M
- 真正从零开始,TensorFlow详细安装入门图文教程!
- iOS巅峰之编译时出现的错误(总结)
- 拆分一个单元表为多个单元簿
- 1.MATLAB界面编程 .m文件生成.exe文件相关问题及解答
- java使用unicode过滤emoji表情
- Android系统中Parcelable和Serializable的区别
- 第十二周-OJ-E输出交换后的两个值
- 润乾在hibernate中配置报表数据源
- Angular 动态生成html中 ng-click无效
- 解决weblogic页面和控制台乱码问题
- 编码