Microsoft Office
Ver Más instrucciones
1
lanzamiento de Microsoft Office Excel , haga clic en " programador", y haga clic en "Visual Basic " para iniciar el Editor de Visual Basic . Haga clic en el menú " Insertar" y haga clic en " módulos" para insertar un nuevo módulo de código
2
Escriba lo siguiente para crear un nuevo sub-procedimiento : .
ColFiles Dim As New Collection
3
Copia y pega el siguiente para crear sus variables:
extractPath dévil como secuencia
fileName Dim As String Dim
pos As Integer
4
Defina la ruta en la que desea copiar los archivos de Excel encontrados :
extractPath = "C : \\ temp \\ "
5
Agregue el siguiente código para llamar a la función que va a buscar los archivos de Excel para la extracción :
colFiles RecursiveDir , "F : \\ moreExcelFiles \\", " *. xlsx " , Verdadero
6 < p> Agregue el siguiente código para copiar los archivos que se encuentran en el camino definido en el paso 3 :
vFile Dim As Variant
For Each vFile en colFiles
pos = InStrRev ( vFile , " \\ " , vbTextCompare )
fileName = Right ( vFile , Len ( vFile ) - pos)
FileCopy vFile , extractPath y fileName
Siguiente vFile
End sub
7
Definir la función " RecursiveDir " para buscar las carpetas y sub- carpetas para archivos de Excel :
Public Function RecursiveDir ( colFiles como colección , _
strFolder As String , _
strFileSpec As String , _
bIncludeSubfolders As Boolean ) guía
strTemp dévil como secuencia
colFolders Dim Como New Collection Hotel
vFolderName Dim As Variant
strFolder = TrailingSlash ( strFolder )
strTemp = Dir ( strFolder y strFileSpec )
Do While strTemp < > ; vbNullString
colFiles.Add strFolder y strTemp
strTemp = Dir
Loop
Si bIncludeSubfolders Entonces
strTemp = Dir ( strFolder , vbDirectory )
Do While strTemp < > vbNullString
Si ( strTemp < > ".") Y ( strTemp < > ".." ) Luego
Si ( GetAttr ( strFolder y strTemp ) y vbDirectory ) < > 0 Entonces
colFolders.Add strTemp
End If End If
< p> strTemp = Dir
Loop
For Each vFolderName En colFolders
Call RecursiveDir ( colFiles , strFolder y vFolderName , strFileSpec , True)
Siguiente vFolderName
End If End Function
8
Cree la siguiente función para añadir o quitar el " \\ " de las rutas de las carpetas :
Pública Función TrailingSlash ( strFolder As String ) As String
Si Len ( strFolder ) > 0 entonces
Si Derecha ( strFolder , 1 ) = " \\ " Entonces
TrailingSlash = strFolder
demás
TrailingSlash = strFolder y "\\ "
End If End If
Función End of
9
Haga clic dentro del " extractExcelFiles " sub - procedimiento y haga clic en "F5 " para ejecutar el programa.