2013-04-23 128 views

回答

0

是的,您可以掃描文件,然後通過VBA代碼從Excel中重命名/複製它們。

您使用的文件系統對象

http://msdn.microsoft.com/en-us/library/office/gg278516.aspx

一些例子:

Set fso = CreateObject("Scripting.FileSystemObject") 
    fso.MoveFile "d:\dummytest.txt", "d:\dummytest2.txt" 

    fso.CopyFile "d:\dummytest.txt", "d:\dummytest2.txt" 

至於確定哪些文件走動等,你必須讓所有的物品清單在一個文件夾中,並確定你的觸發器將採取的行動。正如人們所期望的那樣,這也與文件系統對象相關聯。

下面是一個代碼塊的示例中,我用它來檢查,如果一個文件名我想用已經存在:

Flag = 1 
While Flag > 0 
    FileExists = (Len(Dir(Path & "\" & FileName, lngAttributes)) > 0) 
    If FileExists Then 
     FileName = BaseFilename & "(" & Flag & ").xlsx" 
     Flag = Flag + 1 
    Else 
     Flag = 0 
    End If 
Wend 

這裏是通過一個文件夾中的所有對象循環的樣本:

Set FileSys = New FileSystemObject 
Set myFolder = FileSys.GetFolder(myDir) 
dteFile = DateSerial(1900, 1, 1) 
For Each objFile In myFolder.Files 
    If objFile.DateLastModified > dteFile Then 
     dteFile = objFile.DateLastModified 
     strFilename = objFile.Name 
    End If 
Next objFile 

這應該讓你朝你正在尋找的方向前進。