用VB如何将excel批量转换成csv格式?

比如我有一个EXCEL文件,里面有3个sheets(sheet1,sheet2,sheet3),我要把这三个sheets转变成三个CSV文件(sheet1.csv,she... 比如我有一个EXCEL文件,里面有3个sheets(sheet1,sheet2,sheet3),我要把这三个sheets转变成三个CSV文件(sheet1.csv,sheet2.csv,sheet3.csv)
用VB怎么实现呀,为什么我下面的代码生成的CSV文件打开是不能用呀?

Dim ExlApp As Object
Dim ExlBook As Object
Dim ExlSheet As Object

Set ExlApp = CreateObject("Excel.Application")
Set ExlBook = ExlApp.Workbooks.Open("D:\excel\VK.xls")

ExlBook.Sheets(1).Select
ExlApp.ActiveWorkbook.SaveAs "D:\excel\sheet1.csv", FileFormat:=xlCSV

ExlBook.Sheets(2).Select
ExlApp.ActiveWorkbook.SaveAs "D:\excel\sheet2.csv", FileFormat:=xlCSV

ExlBook.Sheets(3).Select
ExlApp.ActiveWorkbook.SaveAs "D:\excel\sheet3.csv", FileFormat:=xlCSV

大家麻烦给个规范的代码?
展开
 我来答
青和丛驰海
2019-02-08 · TA获得超过3736个赞
知道大有可为答主
回答量:3008
采纳率:28%
帮助的人:250万
展开全部
既然你已经能解决批量转换csv的问题了,那么只要在你打开每个excel后的vba代码里加上
Rows("1:1").Select
Selection.Delete
Shift:=xlUp
Range("A1").Select
即可
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mervyn517
2009-08-18 · TA获得超过5207个赞
知道答主
回答量:349
采纳率:0%
帮助的人:147万
展开全部
我刚刚用VBA 做了一个类似的工具,需要的话留个邮箱我发给你,不过是VBA的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
游方头陀
2009-08-14 · TA获得超过3970个赞
知道小有建树答主
回答量:1055
采纳率:0%
帮助的人:401万
展开全部
学习了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
daofuuq
2009-08-13 · TA获得超过483个赞
知道小有建树答主
回答量:2560
采纳率:0%
帮助的人:922万
展开全部
Attribute VB_Name = "模块1"
2 Sub Macro1()
3 Attribute Macro1.VB_Description = " "
4 Attribute Macro1.VB_ProcData.VB_Invoke_Func = " \n14"
5 '
6 ' Macro1 Macro
7 ' 宏由 Eric yang 录制,时间:
8 '
9
10 '
11 ChDir "D:\"
12
13 cDir = "D:\"
14
15 Do While True
16
17 FName = InputBox("请输入要转换的文件名:", "转换到CSV")
18
19 If FName = "" Then
20 Exit Sub
21 End If
22
23 Workbooks.Open Filename:=cDir & FName & ".xls"
24
25 ActiveWorkbook.SaveAs Filename:=cDir & FName & ".csv", FileFormat:=xlCSV, _
26 CreateBackup:=False
27
28 ActiveWindow.Close SaveChanges:=-1
29
30 Loop
31
32 End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
?>

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式