为什么自动保存的宏只能在写入它的计算机上工作?

这是一个高级解决方案。

在大多数情况下,宏可以无缝地从一台计算机转移到另一台计算机,而不会损失任何功能。但是,如果将文档的保存写入宏,则“保存”仅适用于宏最初写入计算机用户帐户。这是由于“保存”协议包括用于保存的文件路径的原因,该文件路径与写入宏的计算机(特别是“用户帐户”)相关联。例如,如果您的用户帐户是John,并且当LabChart文件保存到Documents时,自动保存的代码可能如下所示:
Call Doc.SaveAsAdvanced ("C:\Users\John\Desktop\Documents\Example.adicht", "{FA80FC3E-8409-4053-BEB7-1ACE168EE24F}-0", 2)

在这种情况下,如果您在另一台计算机/用户帐户上运行宏,则将得到一个错误指示保存失败,或文件根本不会被保存。要解决这个问题,在宏代码更改用户帐户到要运行该代码的用户帐户。

例如,如果你想修改上面的宏在您运行 Jane 用户帐户,通过将打开宏代码 Macro | Manage | Edit,并替换JohnJane

Call Doc.SaveAsAdvanced ("C:\Users\Jane\Desktop\Documents\Example.adicht", "{FA80FC3E-8409-4053-BEB7-1ACE168EE24F}-0", 2)
或者,在新计算机的LabChart中记录一个单独的宏,然后将生成的保存代码复制并粘贴到从另一台计算机导入的宏中。

每当进行涉及自动保存的宏编辑/传输时,在进行任何有意义的记录之前,测试修改后的宏以确保数据正确保存就很重要。

此信息对Windows Vista,Windows 7和Windows 8有效。