El siguiente truco de Excel es muy sencillo. Se trata de una consulta web que nos permite obtener el cambio de divisas a euro casi prácticamente on-line. La consulta se realiza sobre la web www.finanzas.com, sitio que además quiero recomendar; desde él sigo la imparable caída de mis valores…
La consulta es la siguiente:
Sub cambio_divisas()
' Cambiamos la configuración regional temporalmente
With Application
.DecimalSeparator = "."
.ThousandsSeparator = ","
.UseSystemSeparators = False
End With
' Realizamos la consulta web
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www.finanzas.com/divisas", Destination:=Range("A1"))
.Name = "divisas_1"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "1"
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
' Restablecemos la configuración regional del sistema
With Application
.UseSystemSeparators = True
End With
End Sub
Primero cambiamos los separadores de miles y decimales; posteriormente realizamos la consulta a www.finanzas.com/divisas y ya tenemos tabulada la información. Además, no sobrescribimos anteriores consultas; siempre se añadirán gracias a RefreshStyle, por lo que podemos hacer un seguimiento del cambio. Me ha sido muy útil para seguir el efecto del precio de unos fondos de inversión. Saludos.