【VBA】一键完成XLSX 2 CSV 2 JAT的保存和导出

发表于2016-04-07
评论67 4.2k浏览
【VBA】一键完成xlsx>csv>jat的保存和导出
     由于工作需要,常常要把xlsx文件另存为csv并拖入工具转化为jat文件。枯燥重复操作的浪费了很多时间和精力,为此写了一个个人宏,用快捷键来完成以上操作。接下来我解释一下,这个宏是如何制作的:
    工具:
    1、EXCEL2016
    2、newcsv——公司的csv导出jat并上传svn的工具,用falsh开发的。正常操作方法:把csv文件拖放到newcsv窗口中,之后工具会自动导出jat并上传svn对应目录下。

    步骤:
1、创建个人宏
      为了可自定义快捷键,我们选择录制宏时设置(目前还没找到更好的设置快捷键指向宏的方法,欢迎朋友们推荐)。
       开发工具>录制宏,命名宏,设置快捷键,并选择保存到“个人宏工作薄”。


开始录制后,即可点击”停止录制“
点击”Visual Basic“调出VBA编辑器,此时可以看到我们刚才录制的宏。
 

将以下VBA代码粘贴到编辑区。

Sub xlsx2csv2jat()
' 快捷键: Ctrl+q
'
GetFileName = ActiveWorkbook.Name
If Right(GetFileName, 5) = ".xlsx" Then
    newFileName = Left(GetFileName, Len(ActiveWorkbook.Name) - 5) & ".csv"
    FullFilePath = ActiveWorkbook.Path & "" & newFileName
    ActiveWorkbook.Save '保存
    ActiveWorkbook.SaveAs Filename:= _
    FullFilePath, FileFormat _
    :=xlCSV, CreateBackup:=False '另存为csv
    Shell "D:Program Files (x86)newCSVnewCSV.exe " + FullFilePath '导出newcsv
    oldFullFileName = ActiveWorkbook.Path & "" & Left(GetFileName, Len(ActiveWorkbook.Name) - 4) & ".xlsx"
    oldFileName = Left(GetFileName, Len(ActiveWorkbook.Name) - 4) & ".xlsx"
    Workbooks.Open Filename:=oldFullFileName '打开xlsx
    Workbooks(newFileName).Close SaveChanges:=False '关闭csv
    MsgBox oldFileName & "保存成功!" & Chr(13) & newFileName & "保存成功!" & Chr(13) & "newCSV导出成功!" '弹出成功提示

Else
    MsgBox "该文件不是.xlsx类型文件,请确认类型后再导出为.csv文件!!!"

End If
End Sub

 以上代码红色部分为newcsv.exe文件路径,可根据自己电脑上的位置调整。

保存文档。
按下快捷键ctrl+q
 
 

完成:)


欢迎有兴趣的同学互相探讨 。
QQ&邮箱:mp2012@qq.com
 

看了上面的文章 热爱游戏创作的你是不是已经开始热血沸腾了呢?是不是迫不及待的想加入游戏团队成为里面的一员呢?

福利来啦~赶快加入腾讯GAD交流群,人满封群!每天分享游戏开发内部干货、教学视频、福利活动、和有相同梦想的人在一起,更有腾讯游戏专家手把手教你做游戏!

腾讯GAD游戏策划交流群486822377Gad策划交流群

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引