ShellExecute con más dudas

Quisiera que me ayudasen con unas dudas de esta función API he estado investigando por allá en algunos enlaces de la web a cerca de esta función, ya que me han preguntadoreferente a ella y la he puesto en practica:
Tengo esta declaración realizada:
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal IpOperatio As String, ByVal IpFile As String, ByVal IpParameters As String, ByVal IpDirectory As String, ByVal nShowCmd As Long) As Long
posteriormente la invoco desde un clic mediante una etiqueta de las manera siguiente:
ShellExecute Me. Hwnd, vbNullString, C:\Control\Impedimento\BdControl_JUICIOS_ACDOSRESULUTIVOS_CCYUC_REPORTEJUCIOSCONCLUIDO_2009.xls, vbNullString, vbNullString, vbNormalFocus
del cual quiero abrir el archivo en mencion, asi como archivos de pdf y ppt, pero no logro hacer que se abran, los unicos archivos que abre directo con este parametro son lo de word y necesito abrir archivos del tipo que les menciono (xls, pdf, ppt. Mdb).

1 respuesta

Respuesta
1
Creo que te falta, poner en el segundo parámetro "open", prueba a hacerlo algo tal que así:
ShellExecute Me. hWnd, "open", "c:\TuRuta\TuFichero.xls", vbNullString, vbNullString, 1 
Yo lo he probado así y funciona perfectamente.
Agradezco la atención rock76, y no se si omití hacer mención que este código lo estoy manejando desde el editor de código visual basic en access y si tengo puesto el código tal y como me indica pero aun así no habré el archivo que estoy intentando visualizar.
Como comentaba en mi pregunta, lo archivos de word con las rutas que le doy si los abre inmediatamente, ahora bien cuando intento abrir archivos de excel y de acrobat, no los abre.
No se si este código reconozca específicamente la acccion clic directamente de un botón de comando, ya que desde una etiqueta al hacer clic lo estoy manejando.
De antemano y nuevamente te brindo mis agradecimientos, pero si alguien más o tu mismo tiene alguna otra recomendación o fragmento de código el cual pueda analizar, si le prediría el favor de comentármelo, para observar que resultados me produce, ya que esto es lo ultimo que me falta para presentar la aplicación que he creado, ya que llevo 1 años desarrollándola con ayuda de algunos colaboradores en cuento a ideas de diseño, ya que de los fragmentos y programación con código vb yo estoy encargado de efectuarlo, con la ayuda de ejemplos y análisis de otros códigos vb.
Nuevamente y reiterando gracias a los que hace posible de estos medios de aprendizaje y aportaciones de conocimiento de uno para el resto de la comunidad de programadores, ya que cada día se aprende algo nuevo de alguien más.
Y a ti rock76 de igual manera gracias por la atención prestada.
Pues la verdad nunca he trabajado con VBA desde access ni ningún del grupo de Access, pensé que era Visual Basic normal. En principio debería de funcionar igual, si ya pusiste en el segundo parámetro "open" en vez de vbnullstring como indicabas en tu mensaje inicial y tampoco te funcionó la verdad ya no se de que puede ser. Si quieres puedes enviar tu pregunta al grupo de noticias de microsoft:
De visual Basic este: http://groups.google.com/group/microsoft.public.es.vb/topics?hl=es&ie=UTF-8&oe=utf-8
De VBA este: http://groups.google.com/group/microsoft.public.es.vba/topics?hl=es&ie=UTF-8&oe=utf-8
Allí seguro que encuentras alguien que se le haya presentado ese caso.
Saludos y siento no poder serte de más ayuda.
Hola de nueva cuenta rock79, gracias por el tip del shellexecute, ya logre hacer que me habrá los archivos, ahora para finalizar mi duda imagino que esta acción debe de funcionar de igual manera con archivos pdf, nada más quiero que me confirmes si es así, para tener en consideración.
Y por lo que respecta a VBA desde access es la misma secuencia de programación que VBA en modo de diseño y programación desde visual basic, ojala pronto podamos estar en contacto ya que tengo más dudas pero referente a otros temas y código para programar algún otro método, gracias y hasta la próxima.
slave217

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas