如果文件的名称在另一张纸上,您需要创建另一个函数来遍历该单元格范围。
一旦你有了这个函数,让它调用这个函数:
Sub Timecheck(byval aCell as object,byval X as integer,Y as integer)
Dim oFS As Object
Dim strFilename As String
strFilename = aCell.Text
Set oFS = CreateObject("Scripting.FileSystemObject")
Sheets("tab").Activate
ActiveSheet.Cells(X,Y).Value = oFS.GetFile(strFilename).Datelastmodified
Set oFS = Nothing
End Sub
其中 X 和 Y 是要放入数据的单元格的坐标。您可以通过传入从另一张表中获取的范围内的单元格来调用它。
或者,如果您不想遍历范围,则将每个文件名放在新工作表上的单个单元格中,并用不会出现在名称中的字符对其进行分隔。然后把它分解成文件名。
祝你好运。
编辑:
如果您想遍历单元格内分隔列表中的项目,那么一旦您在对象中拥有单元格文本:
http://msdn.microsoft.com/en-us/library/6x627e5f(v=vs.80).aspx
输入'filename1.xls^filename2.xls^filename3.xls'
一旦你有包含文件列表的单元格对象就调用
DoStuff(cellObejct, "^")
Public Sub DoStuff( byval aCell as object, byval specialChar as string)
Dim ListOfNames as Variant
Dim intIndex, xCell, yCell as integer
ListOfNames = Split(aCell.Text,specialChar)
xCell = 1
yCell = 1
For intIndex = LBound(ListOfNames) To UBound(ListOfNames)
TimeCheck(ListOfNames(intIndex),xCell,yCell)
yCell = yCell + 1
Next intIndex
End Sub
Sub Timecheck(byval fName as string,byval X as integer,Y as integer)
Dim oFS As Object
Set oFS = CreateObject("Scripting.FileSystemObject")
Sheets("tab").Activate
ActiveSheet.Cells(X,Y).Value = oFS.GetFile(fName).Datelastmodified
Set oFS = Nothing
End Sub