Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.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
如何创建文件夹&;Excel中使用单元格值的子文件夹_Excel_Vba - Fatal编程技术网

如何创建文件夹&;Excel中使用单元格值的子文件夹

如何创建文件夹&;Excel中使用单元格值的子文件夹,excel,vba,Excel,Vba,如何使此代码使用单元格J2中的值来创建子文件夹,以便在年份滚动时,我可以更改单元格J2中的日期,而无需进入代码 以下是所有代码: Sub IfNewFolder() Dim R As Range Dim RootFolder As String RootFolder = "R:\Sales\Quotes (Commercial)\" '<<< CHANGE 1 For Each R In Range("D1") '<<< CH

如何使此代码使用单元格J2中的值来创建子文件夹,以便在年份滚动时,我可以更改单元格J2中的日期,而无需进入代码

以下是所有代码:

     Sub IfNewFolder()
   Dim R As Range
   Dim RootFolder As String
   RootFolder = "R:\Sales\Quotes (Commercial)\" '<<< CHANGE 1
   For Each R In Range("D1") '<<< CHANGE 2


       If Len(R.Text) > 0 Then
           On Error Resume Next
           MkDir RootFolder & "\" & R.Text
           MkDir RootFolder & "\" & R.Text & "\2019"

           On Error GoTo 0
       End If
   Next R
      End Sub
子IfNewFolder()
调光范围
将根文件夹设置为字符串

RootFolder=“R:\Sales\Quotes(Commercial)\”将J2添加到代码中非常简单:

Sub IfNewFolder()
Dim R As Range
Dim RootFolder As String
Dim CurrYear as String

RootFolder = "R:\Sales\Quotes (Commercial)\" '<<< CHANGE 1
CurrYear = "\" & Range("J2").Value

For Each R In Range("D1") '<<< CHANGE 2
   If Len(R.Text) > 0 Then
       On Error Resume Next
       MkDir RootFolder & "\" & R.Text
       MkDir RootFolder & "\" & R.Text & CurrYear

       On Error GoTo 0
   End If
Next R
End Sub
此外,如果您只查看D1,则不需要为其设置循环,

您只需将R设置为D1,然后检查其.Text长度是否为0。

在哪里设置
R
并声明
RootFolder
?在任何情况下,您都可以执行
MkDir Range(“J2”)&“\”&r.Text&“\2018”
…J2是否将包含完整的路径/文件名?或者,J2是否只包含这一年?想知道你在忙什么,2018年还没有结束是的
下一个r
没有匹配的
For
。请提供与此相关的完整代码。正如@BruceWayne所问的那样,
r
从何而来,以及
RootFolder
定义为什么?J2将在该单元格中有年份。D1创建一个包含该单元格内容的文件夹。
 For Each R in Workbooks(Thisworkbook.name).Worksheets("Sheet1").Range("D1:D10")
 'Rest of loop code here
 Next R