|
HOLA:
disculpa que no te havia entendido....
Pero hay un problema los hipervinculos que maneja ACCESS (campos) DEBES COLOCARLE TODA LA RUTA...si quieres modificar el titulo, debes luego coger uno a uno y decir modificar el hipervinculo..que seria un gran problema....ahora seria tratarlo NO COMO UN HIPERVINCULO...sino como una caja de texto normal...y crear codigo que al hacer click, ABRA EL ARCHIVO CON SU RESPECTIVO PROGRAMA...pero loigicamente debes colocarle la extension...
Ahora para abrir el archivo utiliza esto (codigo por api)
Ejemplo:
ESTA PARTE LA COLOCAS EN EL EVENTO AL HACER CLICK, EN LA CAJA DE TEXTO:
**********************
Dim Resultado As Variant
' intentamos abrir el archivo
Resultado = OpenFile("C:\MiArchivo.txt")
' si ha habido cualquier problema ...
If Resultado <> True Then
' mostramos el mensaje que nos envía el sistema
MsgBox Resultado
End If
***************************
Pega este código en un módulo estandar:
'---------------------------------------------------------
'
' OpenFile
'
' Código escrito originalmente por Juan M. Afán de Ribera
'
' Estás autorizado a utilizarlo dentro de una aplicación
' siempre que esta nota de autor permanezca inalterada.
' En el caso de querer publicarlo en una página Web,
' por favor, contactar con el autor en
'
' accessvbafaq@mvp-access.com
'
' Este código se brinda por cortesía de
' Juan M. Afán de Ribera
'
Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" _
(ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
Private Declare Function FormatMessage Lib "kernel32" _
Alias "FormatMessageA" _
(ByVal dwFlags As Long, _
lpSource As Any, _
ByVal dwMessageId As Long, _
ByVal dwLanguageId As Long, _
ByVal lpBuffer As String, _
ByVal nSize As Long, _
Arguments As Long) As Long
Private Const SW_NORMAL = 1&
Private Const FORMAT_MESSAGE_FROM_SYSTEM = &H1000
' función que abre cualquier archivo ejecutable o documento
' que esté registrado en el sistema con su respectiva aplicación
Public Function OpenFile(FileName As String) As Variant
Dim RetVal As Long
Dim sError As String
Dim LenMsg As Long
' se manda abrir el archivo
RetVal = ShellExecute(0&, "open", FileName, 0&, vbNullString, SW_NORMAL)
' si se ha producido algún error
If RetVal < 33 Then
sError = Space(1024)
' obtenemos el mensaje de error que manda el sistema
LenMsg = FormatMessage( _
FORMAT_MESSAGE_FROM_SYSTEM, _
ByVal 0&, _
RetVal, _
0&, _
sError, _
Len(sError), _
0&)
' devolvemos el mensaje de error
OpenFile = Left(sError, LenMsg - 1)
Else
' la función tuvo éxito
OpenFile = True
End If
End Function
'---------------------------------------------------------
OJO:DONDE DICE OPENFILE Y LA RUTA PUEDES CONCATENAR LA RUTA QUE NECESITAS.....
ATT:TELEMACO
|