Listar los vínculos que hay en una página web.

09/08/2009 - 18:19 por Jose | Informe spam
Saludos a todos:

Con éste código podía acceder a una página web (es la URL que tengo en
la celda "G3"):

ActiveWorkbook.FollowHyperlink Address:=Range("G3").Value,
NewWindow:=True

¿Pero sabeís si existe alguna manera de obtener una lista de los
enlaces, (vínculos), que hay en dicha página web?.

Muchas gracias.

Saludos
Jose

Preguntas similare

Leer las respuestas

#6 Jose
10/08/2009 - 21:47 | Informe spam
Muchas gracias Héctor.

La macro que me has dejado funciona muy bien. Es excelente. No sé cómo
funciona (tengo que estudiarla despacio para entenderla), pero desde
luego funciona.


Yo en la última línea, en lugar de "MsgBox", puse ésta instrucción:

ActiveWorkbook.FollowHyperlink Address:=Raiz & Datos,
NewWindow:=True

con lo cual, antes de abrir el archivo me sale un mensaje de Microsft
Office que me dice: "Abriendo Algunos archivos pueden contener
virus... conviene asegurarse de que la fuente es fiable... ¿Desea
abrir éste archivo?". Me da la opción de "Aceptar" o de
"Cancelar" (la opcion predeterminada).

¿Sabes cómo podría evitar ese mensaje y que lo abra? ("Aceptar")


Muchas gracias.
Recibe un saludo
Jose.
Respuesta Responder a este mensaje
#7 Héctor Miguel
10/08/2009 - 22:05 | Informe spam
hola, Jose !

... en la ultima linea, en lugar de "MsgBox", puse esta instruccion:
ActiveWorkbook.FollowHyperlink Address:=Raiz & Datos, NewWindow:=True
con lo cual, antes de abrir el archivo me sale un mensaje de Microsft Office que me dice:
"Abriendo Algunos archivos pueden contener virus... conviene asegurarse de que la fuente es fiable... Desea abrir este archivo?".
Me da la opción de "Aceptar" o de "Cancelar" (la opcion predeterminada).
... como podria evitar ese mensaje y que lo abra? ("Aceptar")



prueba NO "siguiendo el hipervinculo", si no abriendo el archivo de origen (como un libro nuevo ?)
en lugar del MsgBox utiliza una instruccion +/- asi:

Workbooks.Open Raiz & Datos
o...
Workbooks.OpenText Raiz & Datos

saludos,
hector.
Respuesta Responder a este mensaje
#8 Jose
10/08/2009 - 22:40 | Informe spam
Hola Héctor.

Las dos instrucciones que me has dejado abren el libro. Pero me surge
un pequeño error (creo que no reconoce que es un archivo .csv):

En la [columna A] me sale la Fecha seguido de un punto y coma y
seguido de los dos primeros digitos del valor del fondo. Y en la
[columna B] salen los restantes dígitos del valor del fondo.

Tal como así:

Fecha;Valor Fondo
11/07/2009;69 60578
03/08/2009;77 308467
04/08/2009;77 324532
05/08/2009;76 917923
06/08/2009;76 987046
07/08/2009;77 217935



No te quiero liar.
Muchas gracias por todo.
un saludo
Jose
Respuesta Responder a este mensaje
#9 Héctor Miguel
10/08/2009 - 22:55 | Informe spam
hola, Jose !

esta situacion indica que en la configuracion regional de cada equipo los separadores (listas y argumentos) son diferentes
1) *.CSV significa "comma separated values" (obviamente, la traduccion es: valores separados por comas)
2) en la configuracion regional europea, el separador de listas y argumentos suele ser NO la coma, si no "punto y coma"
3) si el equipo que "genera" un *.csv utiliza "punto y coma" (como es este caso) y el que "recibe/lee/..." utiliza "coma"
lo conveniente es abrir el *.csv con el bloc de notas y sustituir la coma por punto (decimales) y el "punto y coma" por "coma"

(conmigo se abrio igual al detalle que comentas) :-((

saludos,
hector.

__ OP __
Las dos instrucciones que me has dejado abren el libro.
Pero me surge un pequeño error (creo que no reconoce que es un archivo .csv):
En la [columna A] me sale la Fecha seguido de un punto y coma y seguido de los dos primeros digitos del valor del fondo.
Y en la [columna B] salen los restantes dígitos del valor del fondo.
Tal como asi:
Fecha;Valor Fondo
11/07/2009;69 60578
03/08/2009;77 308467
04/08/2009;77 324532
05/08/2009;76 917923 (...)
Respuesta Responder a este mensaje
#10 Jose
11/08/2009 - 01:32 | Informe spam
Hola Héctor:

Con una macro tosca como ésta puedo importar un archivo .csv
correctamente si éste se encuentra en una carpeta de mi ordenador.


With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;C:\Documents and Settings\Jose\Mis documentos\Tablas
\BESTINFOND_20773623794332.csv" _
, Destination:=Range("AA7"))
.Name = "BESTINFOND_20773623794332"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(4, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
End Sub


Pero no he podido hacerlo cuando intento hacer referenia a esa URL en
la que se encuentra. Es decir la macro la adapté así y no me funciona


Despues del código que me dejaste, en lugar del "MsgBox" sigue así:


With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;""Raiz & Datos" _
, Destination:=Range("AA7"))
.Name = "BESTINFOND_210124570781200"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(4, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With



Esta linea no sé como ponerla:
"TEXT;""Raiz & Datos" _

Y aquí el nombre "BESTINFOND_210124570781200" lo puse a mano, según lo
que correspondía, ya que la macro la ejecuté paso a paso y podía ir
viendo el nombre anticipadamente.
.Name = "BESTINFOND_210124570781200"



Supongo que el método importar no sirve para obtener los datos de un
fichero que está en una URL.

Creo que la solución sería abirlo no con Excel si no con el Block de
notas. Después guardarlo, cerrarlo y volver a abrirlo o importarlo con
Excel.

¿Si me das una pista de cómo abrir esta cosa: "Raiz & Datos" con el
Block de notas, y de cómo guardarla?

Lo demás con un poco de paciencia creo que ya lo descubriré.


Muchas gracias, Hector.
Un saludo.
Jose.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida