如何解决确定某个单元格区域中Excel单元格中包含的文件夹文件路径中是否存在文件?
我热衷于向正在构建的excel电子表格中添加功能以跟踪合规性。
事实证明,我的想法很难实现,阅读大量文章和帖子后,我很困惑。
我有一个包含5列的电子表格,其中一列将包含约100个文件夹的文件路径。
其他列将是需要在这些文件夹中的文件-4个文件的标题中具有相同的引用。
我想按一个按钮,让Sub在启动时运行,以浏览每个文件夹并确保合规性文件存在。 我试图修改一些代码,但是我在一些事情上苦苦挣扎。
- 我实际上该如何做?
- 如何使用 dir()函数从单元格中提取文件路径?
- 如何引用当前正在调查的单元格旁边的单元格
- 如何在一系列单元格之间循环(即(A2:A200)
- 它将需要从A列中读取,但是要将布尔值(1或0)返回到同一行的不同单元格,我将如何完成此操作。
这是我去的地方,这是我在网上找到的一些代码。
Sub IsItThere()
Dim Cell As Range
Dim fileName As Variant
Dim i As Integer
Dim C As String
Cell = E3: E200 'The range of Filepaths
For i = 3 To 200
Do
C = Cell(i)
fileName = Dir(C)
While fileName <> ""
If fileName = Dir()(C + "January*") Then 'Does it contain the key phrase
B(i) = "1"
Else
B(i) = "0" 'Make the cell next door to the cell with the current filepath become 1
End If
i = i + 1
fileName = Dir
Wend
End Sub
解决方法
此简单代码将从活动工作表上A2:A200范围的每个单元格中获取文本,检查此字符串中的最后一个符号是否为路径分隔符,并在需要时添加它。
然后在右边的四个单元格中检查文件是否存在,并将结果(TRUE或FALSE)放入F:I列中的单元格
Sub IsItThere()
Dim rCell As Range
Dim sPath As String
Dim sFileName As String
Dim i As Integer
For Each rCell In [A2:A200].Cells()
sPath = rCell.Text
If Right(sPath,1) <> Application.PathSeparator Then sPath = sPath & Application.PathSeparator
For i = 1 To 4
sFileName = Trim(rCell.Offset(0,i).Text)
rCell.Offset(0,i + 4) = (Dir(sPath & sFileName) <> vbNullString)
Next i
Next rCell
End Sub
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。