如何用VBA让指定的EXCEL Sheet生成一个CSV文件

KiaraCer 2020-06-18 06:33:19
各位大神们好,

我,只是一个小会计,本应该好好算账去的但是目前老板们天天要求我们自动化,从小就害怕计算机编程的我也无奈加入了程序媛的行列。现在有一个特别简单的需求,看看哪个大神能指点一二,小女子在此多谢了

1. 在sheet 1中添加一个控件“生成csv”;



2. 点击控件“生成csv”就可以让sheet A中的数据另外生成一个CSV文件;


3. 生成新的CSV文件后sheet A和sheet B的内容丝毫不受影响

希望能得到大神哥哥们的回复,因为做不出来下礼拜就要被拉去祭天了……
...全文
122 点赞 收藏 5
写回复
5 条回复
TerraJuly 2020年06月19日
hi,之前的回复,太简单了,估计使用不方便,我更新了下,可能更好用点。
Sub gen_csv()
Dim cw, cs, csv As String
Dim reopenwk As Workbook
cw = ThisWorkbook.FullName
cs = ThisWorkbook.ActiveSheet.Name
csv = ThisWorkbook.Path + "\" + ThisWorkbook.ActiveSheet.Name + ".csv"
ThisWorkbook.ActiveSheet.SaveAs csv, 6
ThisWorkbook.Saved = True
Set reopenwk = Workbooks.Open(cw)
reopenwk.Worksheets(cs).Activate
ThisWorkbook.Close
End Sub

对了,使用之前,最好做个备份。
回复 点赞
TerraJuly 2020年06月19日
别忘了 把含宏的文件改成xlsm 或者xls格式啊
回复 点赞
KiaraCer 2020年06月19日
小哥哥我试试哈~多谢多谢!
回复 点赞
TerraJuly 2020年06月19日
好用,记得给分哦 谢谢啦
回复 点赞
TerraJuly 2020年06月19日
Sub gen_csv()
ThisWorkbook.ActiveSheet.SaveAs ThisWorkbook.ActiveSheet.Name + ".csv", 6
End Sub

是不是很简单
回复 点赞
发动态
发帖子
Office开发/ VBA
创建于2007-08-27

4459

社区成员

1.7w+

社区内容

其他开发语言 Office开发/ VBA
社区公告
暂无公告