当前位置: 首页 > news >正文

多个表格汇总到一个表格不同的sheet,vba宏

`Sub MergeWorkbookToSheets()Dim Path As StringDim Filename As StringDim Wb As WorkbookDim ws As WorksheetDim ThisWb As WorkbookDim Newsheet As Worksheet'设置目标文件夹路径,请修改为您的实际路径Path = "C:\Users\haifeng\OneDrive\桌面\测试bom\" '注意:路径末尾必须以反斜杠"\"结束Filename = Dir(Path & "*.xls*") '获取所有Excel文件(包括.xls和.xlsx)Set ThisWb = ThisWorkbook '当前工作簿Application.ScreenUpdating = False '关闭屏幕更新,加快速度Application.DisplayAlerts = False '关闭提示,避免覆盖提示Do While Filename <> ""'打开源文件Set Wb = Workbooks.Open(Path & Filename)'遍历源文件中的每一个工作表For Each ws In Wb.Worksheets'在当前汇总工作簿中创建一个新Sheet,并以"文件名_原表名"命名Set Newsheet = ThisWb.Sheets.Add(After:=ThisWb.Sheets(ThisWb.Sheets.Count))'Left函数用于去掉.xlsx后缀Newsheet.Name = Left(Filename, Len(Filename) - 4) & "_" & ws.Name'复制整个工作表内容ws.UsedRange.Copy Newsheet.Range("A1")Next ws'关闭源文件,不保存Wb.Close SaveChanges:=False'获取下一个文件名Filename = Dir()LoopApplication.ScreenUpdating = TrueApplication.DisplayAlerts = TrueMsgBox "汇总完成!", vbInformation
End Sub
``使用说明:
打开Excel,按 Alt + F11 打开VBA编辑器在左侧的"项目资源管理器"中,右键单击您的项目选择"插入" → "模块"将上面的代码完整复制粘贴到新模块中确保路径正确:Path = "C:\Users\haifeng\OneDrive\桌面\测试bom\"返回Excel,按 Alt + F8,选择"MergeWorkbookToSheets"宏并运行
http://www.rkmt.cn/news/6615.html

相关文章:

  • python读取Excel表合并单元格以及清除空格符
  • 创建sshkey并链接git
  • 【QT】使用QT编写一款自己的串口助手
  • alpine安装docker以及docker-compose
  • 运筹学
  • [CF848D] Shake It!
  • 国产化Excel开发组件Spire.XLS教程:使用 Python 设置 Excel 格式,从基础到专业应用
  • c++国外学习视频心得4-opengl
  • 代码随想录算法训练营第一天 | leetcode 704 27 977
  • 【SPIE出版】第五届计算机图形学、人工智能与数据处理国际学术会议
  • 快速边缘块稀疏贝叶斯学习MATLAB实现
  • SpringAI接入DeepSeek大模型实现流式对话
  • 通知语音播报功能,解锁全新体验
  • 【IEEE冠名,香港中文大学(深圳)主办)第五届IEEE能源工程与电力系统国际学术会议(IEEE-EEPS 2025)
  • C#实现Access表格自增ID的重置
  • 运用深度学习模型实现图像的分类
  • sumifs根据条件求和
  • c++右值引用和移动语义
  • 彩笔运维勇闯机器学习--梯度下降法
  • 项目管理软件产业革命:从工具升级到生产力范式转移
  • 详细介绍:Linux--初识网络
  • lua程序调试方法
  • 提示词工程(Prompt Engineering)是不是“新时代的编程”?
  • python日志记录之logging模块
  • O - Color a Tree
  • 前 k 小问题期末考
  • lvm硬盘分区与不分区优缺点
  • 中电金信能碳虚拟电厂数智化平台破局“双碳”难题
  • milvus创建一个用户管理多个库
  • 为什么ceph新添加的硬盘会自动变为osd