Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在新工作簿中复制工作表并用VBA保存_Vba_Excel - Fatal编程技术网

在新工作簿中复制工作表并用VBA保存

在新工作簿中复制工作表并用VBA保存,vba,excel,Vba,Excel,我编写了这段代码,它通过数据验证列表并将工作表复制到新工作簿中。我想保存它,但我可以t。循环不会给我一个错误,并一直在新工作簿中复制和粘贴,但它实际上从未在我设置的目录中保存工作簿的副本 Dim ValidationList As Range Set ValidationList = Range("BF1:BF13") VCount = ValidationList.Count For i = 1 To VCount FolderPath = "C:\Users\A734810\Deskto

我编写了这段代码,它通过数据验证列表并将工作表复制到新工作簿中。我想保存它,但我可以
t。循环不会给我一个错误,并一直在新工作簿中复制和粘贴,但它实际上从未在我设置的目录中保存工作簿的副本

Dim ValidationList As Range
Set ValidationList = Range("BF1:BF13")
VCount = ValidationList.Count


For i = 1 To VCount
FolderPath = "C:\Users\A734810\Desktop\Efficiency"
namesheet = Cells(i, 58)
Path = FolderPath & namesheet & "\*.xlsx"
Filename = Dir(Path)

Range("A8") = Cells(ValidationList(i).Row, ValidationList.Column)

ThisWorkbook.Sheets("Professionals comparative").Copy
ActiveWorkbook.SaveCopyAs Filename:=Filename

Next
如果单元格
单元格(i,58)
\
,并且我猜您有一个“\”,因为根据您的帖子,您没有收到任何错误

问题就在这里

ActiveWorkbook.SaveCopyAs Filename:=Filename
文件正在保存,但未保存到您认为可以保存的位置;)

Filename
只有文件名。你需要把它改成

ActiveWorkbook.SaveCopyAs Filename:=FolderPath & namesheet & "\" & Filename
如果单元格
单元格(i,58)
\
,并且我猜您有一个“\”,因为根据您的帖子,您没有收到任何错误

问题就在这里

ActiveWorkbook.SaveCopyAs Filename:=Filename
文件正在保存,但未保存到您认为可以保存的位置;)

Filename
只有文件名。你需要把它改成

ActiveWorkbook.SaveCopyAs Filename:=FolderPath & namesheet & "\" & Filename

尚未看到其余代码,但请尝试此
ActiveWorkbook.SaveCopyAs文件名:=FolderPath&namesheet&“\”&Filename
我认为应该是
ActiveWorkbook.SaveCopyAs文件名:=FolderPath&“\”&namesheet&“.xlsx”
因为当前代码上的文件名返回文件夹path@winghei:我想到了这一点,但我假设单元格
单元格(I,58)
将有“\”:)没有看到其余的代码,但请尝试此
ActiveWorkbook.SaveCopyAs文件名:=FolderPath&namesheet&“\”&Filename
我认为它应该是
ActiveWorkbook.SaveCopyAs Filename:=FolderPath&“\”&namesheet&“.xlsx”
,因为当前代码上的文件名返回文件夹path@winghei:我想到了这一点,但我假设单元格
单元格(I,58)
将有“\”:)乐于帮助:)乐于帮助:)