用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
大家麻烦给个规范的代码? 展开
用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
大家麻烦给个规范的代码? 展开
4个回答
展开全部
既然你已经能解决批量转换csv的问题了,那么只要在你打开每个excel后的vba代码里加上
Rows("1:1").Select
Selection.Delete
Shift:=xlUp
Range("A1").Select
即可
Rows("1:1").Select
Selection.Delete
Shift:=xlUp
Range("A1").Select
即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我刚刚用VBA 做了一个类似的工具,需要的话留个邮箱我发给你,不过是VBA的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
学习了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
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
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
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |