保存(Thisworkbook.save)上的运行时错误1004可在一台计算机上运行,​​而不是在另一台计算机上运行

时间:2019-08-20 20:29:29

标签: excel vba

我有一个数据输入用户表单,用户将数据保存到工作表时。我想保存Excel文件-为此,我使用ThisWorkbook.Save,它在我的计算机上就像一个超级按钮。

该文件已创建并保存为Excel 2016(Windows 64位)中的.XLSM文件。

现在,当我将其分发给办公室的同事时,某些机器可以正常工作。

某些机器抛出工作表类的运行时1004错误保存方法。

Application.DisplayAlerts = False
Dim xWs As Worksheet

Dim xName As String
xName = "data"
For Each xWs In Application.ActiveWorkbook.Worksheets
        If xWs.Name <> xName Then
            xWs.Visible = False
        End If
Next
ThisWorkbook.Save        '<<<< Runtime 1004 Error on this line
Unload Me
Application.Quit

在检查文件时,数据已保存到工作表中,但会引发错误。

这可能是什么原因?

基于我的想法       “ https://www.rondebruin.nl/win/s5/win001.htm” 用户可以在任何版本的excel excel 2007 / excel 2003中打开我的文件(.xlsm类型)吗?那是根本原因吗?如果可以,我该怎么办?

2 个答案:

答案 0 :(得分:3)

我相信问题在于您如何分发文件。
我的猜测是您通过电子邮件将其发送给他们,然后他们从电子邮件中打开它?
发生的情况是文件处于无法保存的位置。

请您的同事将其另存为桌面或文档文件夹中的文件,以确保他们具有完整的读写功能。
然后打开文件。

这也困扰了我几次。 很容易忘记。

答案 1 :(得分:1)

您要避免使用ActiveWorkbook。创建一个变量来存储您的工作簿并使用该变量。您的问题可能是由于您的ActiveWorkbook指向的工作簿与您想要的工作簿不同。