如何用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的内容丝毫不受影响

希望能得到大神哥哥们的回复,因为做不出来下礼拜就要被拉去祭天了……
...全文
1062 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
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

对了,使用之前,最好做个备份。
nyfln1227 2021-10-24
  • 举报
回复
@TerraJuly ThisWorkbook.Saved = True 这句是不是应该放在SaveAs的前面?要不原文件没被保存?
TerraJuly 2021-10-25
  • 举报
回复
@nyfln1227 不用 这个不是真的保存源文件,只是告诉程序关闭的时候不用提示我保存,源文件不会动的
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

是不是很简单

5,172

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧