Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.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,对VBA非常陌生。我试图写一个程序,打开一个文件夹中的文件,更新它们,并保存在一个新的文件夹中。我已经完成了这一部分,问题是下面的Do-While循环在给定文件夹中的文件中循环代码,但当每个文件都被打开、编辑并保存为下一个期间的文件夹时,循环不会结束。它只是不断重复循环。有什么想法吗?谢谢,查理 Do While (WLFile) > 0 Set WB = Workbooks.Open(WLPath & WLFile, UpdateLinks:=3) ActiveW

对VBA非常陌生。我试图写一个程序,打开一个文件夹中的文件,更新它们,并保存在一个新的文件夹中。我已经完成了这一部分,问题是下面的Do-While循环在给定文件夹中的文件中循环代码,但当每个文件都被打开、编辑并保存为下一个期间的文件夹时,循环不会结束。它只是不断重复循环。有什么想法吗?谢谢,查理

Do While (WLFile) > 0
    Set WB = Workbooks.Open(WLPath & WLFile, UpdateLinks:=3)
    ActiveWorkbook.SaveAs Filename:=MyFolder & "\" & _
                                    "20" & WLYear & "\" & _
                                    QTR & "Q" & "\" & _
                                    WLFile
    ActiveWorkbook.Close

您可以计算目录中的文件数,然后将其用作循环计数器。我在这个网站上找到了以下参考答案,它统计目录中特定扩展名的所有文件并显示结果


变量
WLFile
如何更新?代码中没有任何内容描述该变量是如何初始化的,以及它应该如何从循环的一个过程更改到下一个过程。是的,链接中提到的宏可以作为函数更改,并且可以每次调用以获取文件数,后面的部分已经在代码中