Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否将Excel文件保存到两个不同的位置?_Excel - Fatal编程技术网

是否将Excel文件保存到两个不同的位置?

是否将Excel文件保存到两个不同的位置?,excel,Excel,当我按下CTRL+S时,是否可以同时将Excel文件保存到我的C:驱动器和U盘 谢谢。据我所知,此功能不作为excel本机功能的一部分存在。但是,您可以编写一个小宏,在使用热键时将文件保存到两个不同的位置。下面问题的答案中给出了这样一个宏的一个很好的示例,您需要调整它以在两个位置保存 您可以使用事件宏截取保存: 但是您需要调整文件规范以适应您的情况 因为它是工作簿代码,所以安装和使用非常简单: 右键单击菜单栏上文件左侧的小Excel图标 选择查看代码-这将打开一个VBE窗口 粘贴内容并关闭VBE

当我按下CTRL+S时,是否可以同时将Excel文件保存到我的
C:
驱动器和U盘


谢谢。

据我所知,此功能不作为excel本机功能的一部分存在。但是,您可以编写一个小宏,在使用热键时将文件保存到两个不同的位置。下面问题的答案中给出了这样一个宏的一个很好的示例,您需要调整它以在两个位置保存


您可以使用事件宏截取保存

但是您需要调整文件规范以适应您的情况

因为它是工作簿代码,所以安装和使用非常简单:

  • 右键单击菜单栏上文件左侧的小Excel图标
  • 选择查看代码-这将打开一个VBE窗口
  • 粘贴内容并关闭VBE窗口
  • 如果保存工作簿,宏将与工作簿一起保存。 如果在2003年以后使用Excel版本,则必须保存 文件的格式为.xlsm而不是.xlsx

    要删除宏,请执行以下操作:

  • 如上所述打开VBE窗口
  • 清除代码
  • 关闭VBE窗口
  • 要了解有关宏的更多信息,请参阅:

    要了解有关事件宏(工作簿代码)的详细信息,请参阅:

    必须启用宏才能工作

    编辑#1:

    如果先打开VBE窗口,那么下面是如何打开工作簿代码区:


    我试过了,但没有成功。我打开了Excel工作簿。按Alt+F11启动VBE。单击查看>代码>&复制:私有子工作簿保存前(ByVal SaveAsUI为布尔值,Cancel为布尔值)Cancel=True Application.EnableEvents=False ThisWorkbook.SaveAs文件名:=“F:\stores.xlsm”ThisWorkbook.SaveAs文件名:=“C:\stores.xlsm”Application.EnableEvents=True MsgBox“已执行双重保存”End Sub我将文件以前保存为.xlsm我将在Excel>宏>录制宏中查看。当我按Ctrl+S时,文件不会保存到我的C&F驱动器?@TrevorCarey…………必须将宏放置在工作簿代码区域。看我的说明书,我现在就试试看,虽然我之前一直在这么做。我这样做了,Gary,然后我运行了Marco,但仍然没有成功地将其保存到两个位置。在我开始使用宏和VBE之前,我的文件是否应该保存在.xlsm中?
    Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
        Cancel = True
        Application.EnableEvents = False
            ThisWorkbook.SaveAs Filename:="F:\Transfer\temp.xlsm"
            ThisWorkbook.SaveAs Filename:="C:\TestFolder\temp.xlsm"
        Application.EnableEvents = True
        MsgBox "Dual save performed"
    End Sub