【发布时间】:2020-11-25 19:52:28
【问题描述】:
我的代码可以打开模板、填充模板并用新名称保存模板。
这在我的本地驱动器上运行良好。
但是,我现在需要它在 sharepoint 上工作,由于某种原因我无法理解,它会打开模板,填充模板,然后以相同的名称保存模板,并且不会创建新的电子表格。
Dim saveName as String
Dim fileName as String
Dim sjk as Workbook
fileName = Thisworkbook.Path & Application.PathSeperator & "Template.xlsx"
Set sjk = Workbooks.Open(filename)
saveName = PPD.Range("C100")
sjk.SaveAs ThisWorkbook.Path & "\" & saveName & ".xlsx"
sjk.Close SaveChanges:=True
我已经 debug.print saveName 和 ThisWorkbook.Path 并且一切看起来都很好,应该“另存为”的输出正是它应该的样子......
但我没有得到新的电子表格。
这不是权限问题,我可以在不同的电子表格中运行一个更简单的宏,并在此处创建一个名为“test.xlsx”的已保存 Excel,但我似乎无法让这段代码工作。
如果上面的语法有任何错误请忽略,代码中的语法是正确的,但是我在另一台机器上并在这里手动键入它......它适用于本地驱动器语法错误错过的资本将不是问题。
感谢任何帮助,因为我已经将头撞到墙上好几个小时了,尝试改变 saveName 输出的不同变体....但都无济于事。
对于 ThisWorkBook.Path - 它找到模板...因此它具有正确的路径并保存模板...它只是没有创建具有新名称的新版本...这太可怕了我出去……
【问题讨论】:
-
PPD 不是问题,它是工作表的名称,它是代号。正如我所说,它在我的本地驱动器上运行良好,而且当我查看 saveName 时,它会从 PPD 获取信息并将其完全按照应有的方式放在那里。
标签: excel vba sharepoint