Excel - Contenido de Carpetas Vinculado

 
Vista:
sin imagen de perfil

Contenido de Carpetas Vinculado

Publicado por JONATHAN PINALES (89 intervenciones) el 10/04/2010 03:28:51
Saludos a todos en el foro:

Necesito ayuda, tengo el siguiente código:

Option Explicit
'declaraciones 32-bit API
Declare Function SHGetPathFromIDList Lib "shell32.dll" _
Alias "SHGetPathFromIDListA" (ByVal pidl As Long, ByVal pszPath As String) As Long
Declare Function SHBrowseForFolder Lib "shell32.dll" _
Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long
Public Type BROWSEINFO
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long
End Type
Sub ListFiles()
Dim Msg As String
Dim Directory As String, f As String
Dim r As Long
Msg = "Seleccionar una localización que contenga los archivos que quiera poner en lista."
Directory = GetDirectory(Msg)
If Directory = "" Then Exit Sub
If Right(Directory, 1) <> "\" Then Directory = Directory & "\"
r = 1
' Insertar encabezados
Cells.ClearContents
Cells(r, 1) = "NombreArchivo"
Cells(r, 2) = "Tamaño"
Cells(r, 3) = "Fecha/Hora"
Range("A1:C1").Font.Bold = True
' Obtener el primer achivo
f = Dir(Directory, 7)
Do While f <> ""
r = r + 1
Cells(r, 1) = f
Cells(r, 2) = FileLen(Directory & f)
Cells(r, 3) = FileDateTime(Directory & f)
' Obtener el archivo siguiente
f = Dir
Loop
End Sub
Function GetDirectory(Optional Msg) As String
Dim bInfo As BROWSEINFO
Dim path As String
Dim r As Long, x As Long, pos As Integer
' Fichero Matriz = Escritorio
bInfo.pidlRoot = 0&
' Título en el diálogo
If IsMissing(Msg) Then
bInfo.lpszTitle = "Seleccionar una carpeta."
Else
bInfo.lpszTitle = Msg
End If
' Escriba el directorio para volver
bInfo.ulFlags = &H1
' Mostrar el diálogo
x = SHBrowseForFolder(bInfo)
' Analice el resultado
path = Space$(512)
r = SHGetPathFromIDList(ByVal x, ByVal path)
If r Then
pos = InStr(path, Chr$(0))
GetDirectory = Left(path, pos - 1)
Else
GetDirectory = ""
End If
End Function

Es una macro para excel que me pone el contenido de carpetas, funciona bien, solo que ahora necesito que ése contenido me lo ponga vinculado.

Por la atención muchas gracias.

Jonathan
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Saludos, desde Baires, JuanC

RE:Contenido de Carpetas Vinculado

Publicado por Saludos, desde Baires, JuanC (1237 intervenciones) el 11/04/2010 13:10:25
un hipervínculo lo podés hacer con la grabadora de macros
otra cosa es abrirlo en el explorador
Call Shell("Explorer.exe /n,/e,/select, C:\ruta\archi.ext")

Saludos, desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar