RE:abrir archivos excel desde un datawindow
Entiendo que quieres ejecutar el archivo fuera de PB.
Un método es:
1. Pegas cuatro controles:
- sle_archivo (escribes nombre del archivo sin .xls)
- sle_ruta (mostrará la ruta)
- Un botón Buscar y otro Ejecutar.
2. Declaras la función externa:
FUNCTION long SearchTreeForFile(String RootPath ,String InputPathName , ref String OutputPathBuffer) LIBRARY "imagehlp.dll"
3. Botón Buscar:
SetPointer ( HourGlass! )
CONSTANT long MAX_PATH = 260
string tempStr, ls_archivo
long ret
tempStr = space(MAX_PATH)
ls_archivo=sle_archivo.text+".xls"
// 'retorna 1 si lo encuentra, 0 si falla en la busqueda
Ret = SearchTreeForFile("c:\", ls_archivo, tempStr) //se puede 'c:\temp' para agilizar
if ret<>0 then
sle_ruta.text=string(tempStr) //muestra la ruta
else
messagebox("Error...","El archivo no existe.")
end if
SetPointer ( Arrow! )
4. Botón Ejecutar:
Run("C:\Archivos de programa\Microsoft Office\Office10\EXCEL.EXE "+sle_ruta.text)
Nota: Luego de ...EXCEL.EXE existe un espacio. Ojo con eso.
Desventajas:
- Debes escribir el nombre completo del archivo.
- Acepta un archivo de más de 8 caracteres; pero sin espacios.
OTRO METODO más simple, consiste en ejecutar el archivo FINDER.EXE Aparece una ventana donde puedes hacer las búsquedas que quieras y de la forma que quieras.
En un botón, sólo pega:
run("C:\Archivos de programa\Microsoft Office\Office10\FINDER.EXE")
Listo!