由于'Temp'访问受限,无法复制工作表



在这个网站上读了很多之后,现在是时候提问了。这是一个错误(1004无法复制表单(,已经给出了许多问题和答案,但我仍然找不到可行的解决方案。

我为我的同事创建了一个工具,可以帮助创建CSV上传文件。她面临的问题(在我的笔记本电脑上运行良好(是,我下面的代码想将一个临时文件保存到";C: \Windows\Temp"(据她办公室的IT人员说(。由于某些原因,无法访问此位置。所有用户都可以访问的临时位置是:;C: \Users\xxx\AppData\Local\Temp"。其中";xxx";是在名为"的单元格中给出的用户名;用户名";(所以这可以用来创建一个自定义路径来存储临时文件??(。

这是我的代码:

Sheets("CSV").Copy
ActiveWorkbook.SaveAs Filename:= _
ThisWorkbook.Sheets("Options").Range("SAVELOCATION") & _
ThisWorkbook.Sheets("options").Range("SAVENAME"), FileFormat:=xlCSV, CreateBackup:=False
ActiveWindow.Close

我试图找到各种解决方案,但由于缺乏编码技能,我受到了限制:

  1. 将工作表另存为新文件,而无需首先将其复制(到临时文件(>以下代码没有成功
Sheets("CSV").SaveCopyAs Filename:= _
ThisWorkbook.Sheets("Options").Range("SAVELOCATION") & _
ThisWorkbook.Sheets("options").Range("SAVENAME"), FileFormat:=xlCSV, CreateBackup:=False
  1. 更改";temp";位置>不知道怎么做

如果有人能帮我,我将不胜感激。

Lennard

使用savelocation = environ("TEMP")
您也可以使用保存到"我的文档">

Function MyDocs() As String
'returns the path to My Documents 
MyDocs = CreateObject("wscript.shell").specialfolders("mydocuments")
End Function

最新更新