简化“另存为CSV”程序

当我尝试在Excel中保存.csv文件时,系统会提示另外三个窗口要求我保存某些内容。 我不打扰阅读,但每次点击“ No或“ Cancel会变得很累人:

另存为CSV确认
当我按CTRL + S时,如何设置Excel以保存我的文件?

如果您习惯性地使用Ctrl + s ,那么重写该按键组合可能是不明智的。 但是,没有什么可以阻止您通过将新的Save-As-CSV分配给Ctrl + Shift + S来扩展其有用性。

最好的地方将取决于你的个人情况,其中很less提供。 已经build议使用Personal.xlsb ; embedded到启用macros的模板中是另一种方法,当然,您可以简单地将它们放入当前正在处理的工作簿中的模块代码表中。

 Sub no_training_wheels(Optional ws As Worksheet) Dim fn As String If IsEmpty(ws) Then Set ws = ActiveSheet With ws .Activate If CBool(Application.CountA(.Cells)) Then If CBool(Len(.Parent.Path)) Then fn = .Parent.Path & Chr(92) & Left(.Parent.Name & Chr(46), InStr(1, .Parent.Name, Chr(46)) - 1) Else fn = Application.GetSaveAsFilename( _ InitialFileName:=Environ("USERPROFILE") & Chr(92) & ActiveSheet.Name, _ fileFilter:="Comma Separated Value files (*.csv), *.csv") If LCase(fn) = "false" Then fn = Environ("TEMP") & Chr(92) & .Name End If Application.DisplayAlerts = False .Parent.SaveAs Filename:=fn, FileFormat:=xlCSV, Local:=True Application.DisplayAlerts = True End If End With End Sub Sub take_training_wheels_off() Application.MacroOptions Macro:="no_training_wheels", ShortcutKey:="S", _ Description:="Alternate Save-to-CSV without warnings" End Sub Sub put_training_wheels_on() Application.MacroOptions Macro:="no_training_wheels", ShortcutKey:="", _ Description:="Alternate Save-to-CSV without warnings" End Sub 

该macros有一个可选的工作表参数,以扩展其用于其他编码例程。 这也具有从“macros运行”对话框中的“macros名称:”列表中删除的效果。 有两个“帮手”例程来启用和禁用Ctrl + Shift + S组合键。 Ctrl + s的常规保存操作不受影响。

我已经推断,你希望避免对话和大多数叙述中互动, “我不打扰阅读,但每次点击”否“或”取消“会越来越累 ,而且你很乐意接受默认设置, CSV尽可能less的互动。 为此,我做了一些假设。 你可能想在使用例行的单行本之前检查它们。

Workbook.SaveAs方法