Reemplazar "Application.FileSearch" en excel 2007
Hola, acabo de entrar a la página, ya que me ha ayudado mucho en otros problemas; pero ahora tengo uno algo especial, espero me puedan ayudar.
Estoy trabajando con unas Hojas que hacen comparaciones internas, estas hojas fueron hechas en Office 2003 y piden información de otras hojas para copiar datos a un comboBox. El problema es que la función "Application.Filesearch" ya no está(según leí) en la versión 2007.
La ayuda que necesito es: ¿Cómo puedo adaptar el código a esta versión con "Scripting.FileSystemObject"?
Este es el código original:
Function BuscarArchivo(ruta, nombreArchivo) As Boolean
Dim libroP As Workbook, encontrado As Boolean
encontrado = False
With Application.FileSearch
.NewSearch
.Filename = nombreArchivo
.LookIn = ruta
.Execute
If .FoundFiles.Count = 1 Then
For Each libroP In Workbooks
If libroP.Name = nombreArchivo Then
encontrado = True
End If
Next libroP
If encontrado = False Then
Workbooks.Open Filename:=ruta & "\" & nombreArchivo, ReadOnly:=True
End If
BuscarArchivo = True
Else
BuscarArchivo = False
End If
End With
End Function
Y este es uno que encontré en una página que sirve en 2007:
Sub FileExists()
Dim fso
Dim file As String
file = "C:\Test.xls" ' change to match the file w/Path
Set fso = CreateObject("Scripting.FileSystemObject")
If Not fso.FileExists(file) Then
MsgBox file & " was not located.", vbInformation, "File Not Found"
Else
MsgBox file & " has been located.", vbInformation, "File Found"
End If
End Sub
¿Me podrian ayudar a adaptar el primero con el segundo, es decir para que funcione en 2007?
De antemano, Gracias!
Estoy trabajando con unas Hojas que hacen comparaciones internas, estas hojas fueron hechas en Office 2003 y piden información de otras hojas para copiar datos a un comboBox. El problema es que la función "Application.Filesearch" ya no está(según leí) en la versión 2007.
La ayuda que necesito es: ¿Cómo puedo adaptar el código a esta versión con "Scripting.FileSystemObject"?
Este es el código original:
Function BuscarArchivo(ruta, nombreArchivo) As Boolean
Dim libroP As Workbook, encontrado As Boolean
encontrado = False
With Application.FileSearch
.NewSearch
.Filename = nombreArchivo
.LookIn = ruta
.Execute
If .FoundFiles.Count = 1 Then
For Each libroP In Workbooks
If libroP.Name = nombreArchivo Then
encontrado = True
End If
Next libroP
If encontrado = False Then
Workbooks.Open Filename:=ruta & "\" & nombreArchivo, ReadOnly:=True
End If
BuscarArchivo = True
Else
BuscarArchivo = False
End If
End With
End Function
Y este es uno que encontré en una página que sirve en 2007:
Sub FileExists()
Dim fso
Dim file As String
file = "C:\Test.xls" ' change to match the file w/Path
Set fso = CreateObject("Scripting.FileSystemObject")
If Not fso.FileExists(file) Then
MsgBox file & " was not located.", vbInformation, "File Not Found"
Else
MsgBox file & " has been located.", vbInformation, "File Found"
End If
End Sub
¿Me podrian ayudar a adaptar el primero con el segundo, es decir para que funcione en 2007?
De antemano, Gracias!