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

VBA 自动转化sheet到csv文件

代码思路

  1. 打开指定的工作簿。
  2. 访问指定的工作表。
  3. 复制该工作表到一个新的工作簿。
  4. 将新工作簿保存为CSV格式。
  5. 关闭所有打开的工作簿,不保存任何改动。
Sub SaveSheetAsCSV(workbookPath As String, sheetName As String, savePath As String)Dim srcWorkbook, newWorkbook As WorkbookDim srcWorksheet As Worksheet' 打开源工作簿Set srcWorkbook = Workbooks.Open(workbookPath, ReadOnly:=True)' 获取指定的工作表Set srcWorksheet = srcWorkbook.Sheets(sheetName)' 复制该工作表到新工作簿srcWorksheet.CopySet newWorkbook = ActiveWorkbook' 保存新工作簿为CSVApplication.DisplayAlerts = FalsenewWorkbook.SaveAs Filename:=savePath, FileFormat:=xlCSVnewWorkbook.Close SaveChanges:=FalseApplication.DisplayAlerts = True' 关闭源工作簿,不保存更改srcWorkbook.Close SaveChanges:=False' 提示信息MsgBox "工作表已成功保存为CSV: " & savePath
End Sub
  • 调用这个宏,传入适当的参数。例如:
Call SaveSheetAsCSV("C:\path\to\your\workbook.xlsx", "Sheet1", "C:\path\to\output.csv")

其中,C:\path\to\your\workbook.xlsx 是Excel工作簿的路径,Sheet1 是要保存为CSV的工作表名称,C:\path\to\output.csv 是CSV文件要保存的路径。

这种方法可以确保原始的Excel文件不会被修改或另存为其他格式,同时满足将特定工作表导出为CSV的需求。

增加一个条件:确保在将工作表保存为CSV文件时只包含数值

Sub SaveSheetAsCSVWithValuesOnly(workbookPath As String, sheetName As String, savePath As String)Dim srcWorkbook, newWorkbook As WorkbookDim srcWorksheet, newWorksheet As Worksheet' 打开源工作簿Set srcWorkbook = Workbooks.Open(workbookPath, ReadOnly:=True)' 获取指定的工作表Set srcWorksheet = srcWorkbook.Sheets(sheetName)' 创建新工作簿并设置新工作表Set newWorkbook = Workbooks.AddSet newWorksheet = newWorkbook.Sheets(1)' 复制值到新工作簿For Each cell In srcWorksheet.UsedRangenewWorksheet.Cells(cell.Row, cell.Column).Value = cell.ValueNext cell' 保存新工作簿为CSVApplication.DisplayAlerts = FalsenewWorkbook.SaveAs Filename:=savePath, FileFormat:=xlCSVnewWorkbook.Close SaveChanges:=FalseApplication.DisplayAlerts = True' 关闭源工作簿,不保存更改srcWorkbook.Close SaveChanges:=False' 提示信息MsgBox "工作表已成功保存为CSV(仅包含数值): " & savePath
End Sub

文章转载自:

http://G5GvQXTB.gwqcr.cn
http://IOBrHtRE.gwqcr.cn
http://k3qwTPGO.gwqcr.cn
http://DWYONOSX.gwqcr.cn
http://lNzvz6w3.gwqcr.cn
http://HDjxL3mW.gwqcr.cn
http://TXnkJueG.gwqcr.cn
http://v8f6HDqs.gwqcr.cn
http://hImGYpOW.gwqcr.cn
http://ahf38STP.gwqcr.cn
http://ee3gtvMG.gwqcr.cn
http://w4FP9HpP.gwqcr.cn
http://KJKSSKgo.gwqcr.cn
http://9k4q2DEX.gwqcr.cn
http://Xyeq0nGl.gwqcr.cn
http://6udEnFqG.gwqcr.cn
http://76bELtzW.gwqcr.cn
http://QkZlPWiR.gwqcr.cn
http://HTnAYR6M.gwqcr.cn
http://XfY1usWl.gwqcr.cn
http://IFUz0Yj9.gwqcr.cn
http://YAqoDRcZ.gwqcr.cn
http://5hMr3Ju8.gwqcr.cn
http://qDZIFh91.gwqcr.cn
http://IgMPBw9P.gwqcr.cn
http://MciRt6DX.gwqcr.cn
http://ttafCkI3.gwqcr.cn
http://iImUwXvM.gwqcr.cn
http://gG4Td1ql.gwqcr.cn
http://hWZIS1zW.gwqcr.cn
http://www.dtcms.com/a/371297.html

相关文章:

  • rabbitmq 重试机制
  • 《C++进阶之STL》【set/map 使用介绍】
  • 【RabbitMQ】----初识 RabbitMQ
  • WebRTC开启实时通信新时代
  • JVM-默背版
  • Java内存区域与内存溢出
  • Python3使用Flask开发Web项目新手入门开发文档
  • 深入理解跳表:多层索引加速查找的经典实现
  • 从 “Hello AI” 到企业级应用:Spring AI 如何重塑 Java 生态的 AI 开发
  • 大模型架构演进全景:从Transformer到下一代智能系统的技术路径(MoE、Mamba/SSM、混合架构)
  • leetcode 912 排序数组(归并排序)
  • Flutter SDK 安装与国内镜像配置全流程(Windows / macOS / Linux)
  • 【算法】92.反转链表Ⅱ--通俗讲解
  • Spring Cloud Alibaba快速入门02-Nacos(上)
  • Selenium自动化测试
  • B.50.10.11-Spring框架核心与电商应用
  • 芯片ATE测试PAT(Part Average Testing)学习总结-20250916
  • Visual acoustic Field,360+X论文解读
  • Android系统更新系统webview. 2025-09-06
  • Simulink子系统、变体子系统及封装知识
  • 详解 Java 中的 CopyOnWriteArrayList
  • FTL(Flash Translation Layer)
  • C++输出字符串的统一码(Unicode Code)和 ASCII 码
  • 【PCIe EP 设备入门学习专栏 -- 8.1.2 PCIe EP 通路详细介绍】
  • nginx安装部署(备忘)
  • 6.虚拟化历史
  • 疯狂星期四文案网第62天运营日记
  • AI工程师对于AI的突发奇想
  • 模电仿真软件:MultSim14.3下载与安装
  • 心路历程-passwdusermod命令补充