您好我正在使用此VBA代码保存Excel工作簿:
Sub Button10_Click()
Dim SaveName As String
SaveName = ActiveSheet.Range("N2").Text
ActiveWorkbook.SaveAs Filename:="z:\" & _
SaveName & ".xlsm"
End Sub
这个代码工作一旦我打开模板并提交第一个保存,但是当我对该工作簿进行更改并尝试保存它时,不允许我覆盖并给我一个1004错误。
但是当我再次打开模板并放入相同的FileName时,它会让我覆盖一下提示框。
有没有办法让它覆盖?
哦和cel N2是B2和B3的连接,它是站点名称,如果这导致问题,则日期之间带有“ - ”。
提前感谢您的帮助
我为自己解决问题所做的工作:
修改工作簿以删除fileName中的任何空格
SaveName现在是WeeklyTakingsv9,但是从siteName(B2)更改--WeekendingDate(B3)站点名称将白色空格放出“_”
我尝试修剪但是客户端将fileName作为特定SiteName到周末日期。
尝试创建一个解决方案,以便打开对话框,给出fileName和Networked驱动器位置,但这不适用于客户端计算机
进一步细节
我有26个客户端站点(图书馆)
每个站点都有自己的网络驱动器连接到SharePoint
我所做的是设置连接到sharepoint库的每个网络驱动器
i将驱动器号设置为Z,以便不干扰他们自己的网络设置
因此,我不必创建26个工作簿,我已达到这一点,它将保存一次,但他们需要每天进入工作簿并进行更改。
所以当打开工作簿时B2-B3没有改变,所以fileName是相同的,但它不允许我覆盖那里的内容
SharePoint不是问题,这是我在Excel上遇到的覆盖问题
答案 0 :(得分:0)
我在我工作的组织内一直使用网络保存。
保存为新文件时仅使用SaveAs。
当您希望工作簿自行保存时,我发现以下代码成功:
Application.DisplayAlerts = False
ThisWorkbook.Save
请注意,每次用户点击(每天24小时使用文件!)时,此代码每30秒左右执行一次,并且自实施以来没有失败(2013年10月)。
祝你好运。