Descargar una version nueva de archivo excel desde una web.

16/02/2007 - 21:40 por ~ jose ~ | Informe spam
Hola que tal?
Esto tiene tela!!! (creo!, jejeje)

Tengo una aplicación hecha en Excel que quisiera ponerla en mi web
para que la gente se la pueda descargar. Hasta ahí bien, lo que quiero
hacer es que el que esté utilzando el programa sepa de algún modo si
existe una nueva versión para podersela descargar. Se puede hacer esto
en VBE?, o haria falta programación web?. Si es así por si ahy algún
programador web por ahí os comento que mi servidor soporta php, asp,
asp.net, cgi-bi, perl y la base de datos seria de access.

Si hace falta algo mas de información comentais vale?
Venga, un saludo,
jose

Preguntas similare

Leer las respuestas

#1 ~ jose ~
17/02/2007 - 16:44 | Informe spam
Hola, que tal?
he estado probando el código y no funciona, no me descarga el archivo
pero si que en el contador web cuenta como descargado. Lo he buscado
por todo el PC (por si no lo dejaba en C:\) y no lo he encontrado.
Se puede probar con esta URL:

Sub Ejemplo()
DownloadFile "http://www.carpinjose.com/public/su...descargas/
index.php?file=Libro1.xls", "C:\"
End Sub

Y para ver el resultado del contador puedes verlo aquí, verás como va
sumando pero no lo descarga:
http://www.carpinjose.com/subidasyd...descargas/

He subido 3 archivos para ir haciendo pruebas.

Gracias y un saludo, vale?
jose

On 17 feb, 04:32, "Francisco Parrilla"
wrote:
Ups era dentro de el foro de VBA :)

Paso el codigo de la funcion para su revision...

Private Declare Function URLDownloadToFile Lib "urlmon" Alias
"URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String,
ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As
Long) As Long

Public Function DownloadFile(URL As String, LocalFilename As String) As
Boolean
Dim lngRetVal As Long
lngRetVal = URLDownloadToFile(0, URL, LocalFilename, 0, 0)
If lngRetVal = 0 Then DownloadFile = True
End Function

Sub Ejemplo()
DownloadFile "http://www.webserver/datos/file001....t;,"c:\"
End Sub

Atte.
?T Francisco T?http://groups.msn.com/ExcelVbaMacrosOffice

El verdadero buscador crece y aprende, y descubre que siempre es el principal responsable de lo que sucede.
Jorge Bucay

La oscuridad nos envuelve a todos, pero mientras el sabio tropieza en alguna pared, el ignorante permanece tranquilo en el centro de la estancia.
Anatole France
Respuesta Responder a este mensaje
#2 KL
17/02/2007 - 20:21 | Informe spam
Esto me funciona en Windows Vista Ultimate + MSO 2003:

Private Declare Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" (ByVal pCaller As Long, _
ByVal szURL As String, ByVal szFileName As String, _
ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

Public Function DownloadFile(URL As String, _
LocalFilename As String) As Boolean
Dim lngRetVal As Long
lngRetVal = URLDownloadToFile(0, URL, LocalFilename, 0, 0)
If lngRetVal = 0 Then DownloadFile = True
End Function

Sub Ejemplo()
DownloadFile _
"http://www.carpinjose.com/public/" & _
"subidasydescargas/index.php?file=Libro1.xls", _
"C:\temp\Test1.xls"
End Sub

Por alguna razon, se niega (silenciosamente) a guardar el fichero en C:\

Saludos,
KL


"~ jose ~" wrote in message news:
Hola, que tal?
he estado probando el código y no funciona, no me descarga el archivo
pero si que en el contador web cuenta como descargado. Lo he buscado
por todo el PC (por si no lo dejaba en C:\) y no lo he encontrado.
Se puede probar con esta URL:

Sub Ejemplo()
DownloadFile "http://www.carpinjose.com/public/su...descargas/
index.php?file=Libro1.xls", "C:\"
End Sub

Y para ver el resultado del contador puedes verlo aquí, verás como va
sumando pero no lo descarga:
http://www.carpinjose.com/subidasyd...descargas/

He subido 3 archivos para ir haciendo pruebas.

Gracias y un saludo, vale?
jose

On 17 feb, 04:32, "Francisco Parrilla"
wrote:
Ups era dentro de el foro de VBA :)

Paso el codigo de la funcion para su revision...

Private Declare Function URLDownloadToFile Lib "urlmon" Alias
"URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String,
ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As
Long) As Long

Public Function DownloadFile(URL As String, LocalFilename As String) As
Boolean
Dim lngRetVal As Long
lngRetVal = URLDownloadToFile(0, URL, LocalFilename, 0, 0)
If lngRetVal = 0 Then DownloadFile = True
End Function

Sub Ejemplo()
DownloadFile "http://www.webserver/datos/file001....t;,"c:\"
End Sub

Atte.
?T Francisco T?http://groups.msn.com/ExcelVbaMacrosOffice

El verdadero buscador crece y aprende, y descubre que siempre es el principal responsable de lo que sucede.
Jorge Bucay

La oscuridad nos envuelve a todos, pero mientras el sabio tropieza en alguna pared, el ignorante permanece tranquilo en el
centro de la estancia.
Anatole France
Respuesta Responder a este mensaje
#3 Héctor Miguel
18/02/2007 - 06:38 | Informe spam
hola, chicos !

KL escribio en el mensaje ...
Esto me funciona en Windows Vista Ultimate + MSO 2003: [...]
Por alguna razon, se niega (silenciosamente) a guardar el fichero en C:\



alguna vez me ha sucedido que 'cierto' tipo de archivos no son descargados 'donde le digo' a la descarga [IE] :-((
no se si tenga algo que ver alguna especie de 'politica de seguridad' [windows/ie/...] pero...
me he encontrado con 'enlaces' a los archivos [NO] descargados [NO los archivos 'en si'] en el directorio del cache del ie ;)

es probable que alguno de los comentarios en los ultimos 5 parrafos de la siguiente pagina [antes de los codigos]
pudiera aportar alguna solucion o 'truco' para solucionar 'ciertos' problemas con la descarga de archivos desde el ie -?-
-> Visual Basic Internet Routines
URLDownloadToFile: Fast, Simple and Transparent File Downloads
http://vbnet.mvps.org/code/internet...tofile.htm

[solo por si fueran de utilidad] :D
saludos,
hector.
Respuesta Responder a este mensaje
#4 ~ jose ~
18/02/2007 - 20:48 | Informe spam
Hola, que tal?
ya me he dado cuenta donde estaba el fallo.
El problema con el código de Francisco es que no habia puesto el
nombre del archivo en C:\, hay que poner el nombre o ruta que quieras
como ha hecho KL si no, no funciona.

Sobre el enlace que propone Héctor, me ha servido de mucho.
He creado un archivo llamado VersionesLibros.txt, lo he subido a mi
web donde están los otros tres libros.xls para hacer pruebas y he
puesto dentro: "La última versión del programa es: Libro3" (podria
haber puesto solo "3" que es lo que voy a utilizar).
En el código de la página:
http://vbnet.mvps.org/index.html?co...tofile.htm
hago referencia al archivo VersionesLibros.txt para descargarlo y he
modificado la parte:
hfile = FreeFile
Open sLocalFile For Input As #hfile
[a1] = Input$(LOF(hfile), hfile)
Close #hfile

para que en A1 me deje el texto del archivo y dentro de la hoja solo
queda preparar unas sencillas funciones para que si el texto de A1 es
mayor que la versión del programa me lance un msgbox o lo que quiera
para descargar el nuevo archivo.

Venga!, gracias y un saludo,
jose
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida