快速打开文件夹中的所有文件,刷新所有文件,另存为所有文件的方法

时间:2019-04-04 13:25:27

标签: excel vba

我有2个不同的文件夹位置,一个模板文件夹包含40个模板excel文件,这些文件包含预制公式。这些文件另存为template_2D,template_3D等,但是30个文件取决于一个将被打开的名为'srtData的文件。 xslx”,另10个数据从30个打开数据中提取。

然后,我想刷新所有文件(因为它们彼此依赖),然后我将所有40个文件及其名称(不带模板)保存在不同的位置。例如。 2D,3D ...,但是在其他位置,然后关闭所有模板文件以及这些保存的文件。这样,模板文件就不会更改,而只需将刷新版本保存在其他文件夹位置即可。

我对VBA非常基础,因此一无所获。

到目前为止,我只有

 Sub OpenAllWorkbooks()

Dim fldrpath As String

fldrpath = "R:\Sam\"

'Step 1:Declare your variables
Dim MyFiles As String
 'Step 2: Specify a target folder/directory, you may change it.
MyFiles = Dir(fldrpath & "*.xlsx")
Do While MyFiles <> ""
'Step 3: Open Workbooks one by one
Workbooks.Open fldrpath & MyFiles

'Step 4: Next File in the folder/Directory
MyFiles = Dir
Loop

End Sub

但是我认为这样做我不知道如何将所有内容保存在不同的文件夹中

1 个答案:

答案 0 :(得分:0)

这是我使用的解决方案,遵循上面的评论:

Sub OpenAllWorkbooks()

Dim wb as Workbook
Dim fldrpath As String

fldrpath = "R:\Sam\"

'Step 1:Declare your variables
Dim MyFiles As String
 'Step 2: Specify a target folder/directory, you may change it.
MyFiles = Dir(fldrpath & "*.xlsx")
Do While MyFiles <> ""
'Step 3: Open Workbooks one by one
Set wb = Workbooks.Open (fldrpath & MyFiles)
wb.SaveAs path,fileformat

'Step 4: Next File in the folder/Directory
MyFiles = Dir
Loop

End Sub