Del foro de openoffice en español, he encontrado información andaba buscando sobre macros y obtener datos de una web para pasarlos a una hoja de calculo...
Modo manual para obtener datos de una web con libreoffice, posteado por ifanlo:
http://user.services.openoffice.org/es/forum/viewtopic.php?f=50&t=5386#p19496
"En el ejemplo que adjunto, establezco los límites de fechas y a partir de ahí, se me crea una celda (D2) con la dirección URL deseada.ejemplo que adjuntaba: http://user.services.openoffice.org/es/forum/download/file.php?id=1805
1) Me situo en esa celda y copio con Ctrl+C
2) Me desplazo a D6 (o donde desees importar la tabla)
3) Insertar > Vincular con datos externos y aparecerá un diálogo "Datos externos"
4) En "URL de la fuente de datos externa", pegar con Ctrl+V y se pegará el contenido de la URL que antes copiamos.
5) Pulsar Intro (paciencia, que tarda un poquito en responder)
6) Aceptar sin más en el diálogo "Opciones de importación" que aparece
7) En el diálogo "Datos externos" se mostrarán las tablas detectadas. Seleccionar HTML_19 (si cambian el diseño de la página, esto puede cambiar) y Aceptar
Tras una breve pausa se pegará el contenido de la tabla."
Macro para obtener datos de una web, autor FORNELASA:
Suponiendo que la URL esta en la celda G1 de la Hoja1 (hoja activa)
Y deseamos la tabla puesta en la Hoja2 celda H1
Y que la tabla es la numero 19
esta macro sería una opcion:
sub datosexternos
'-------------------------------------------------------------------------------------------------------------------------------------
Dim oSheet as Object
dim args(2) as new com.sun.star.beans.PropertyValue
dim cadena as string
dim document as object
dim dispatcher as object
'-------------------------------------------------------------------------------------------------------------------------------------
oSheet = ThisComponent.Sheets.getByName("Hoja2")
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
cadena = thiscomponent.currentcontroller.activesheet.getcellrangebyname("G1").string
'-------------------------------------------------------------------------------------------------------------------------------------
args(0).Name = "FileName"
args(0).Value = cadena
args(1).Name = "FilterName"
args(1).Value = "calc_HTML_WebQuery"
args(2).Name = "Source"
args(2).Value = "HTML_19"
'-------------------------------------------------------------------------------------------------------------------------------------
ThisComponent.CurrentController.select(oSheet.getCellRangeByName("H1"))
dispatcher.executeDispatch(document, ".uno:InsertExternalDataSource", "", 0, args())
'-------------------------------------------------------------------------------------------------------------------------------------
end sub
Nota:
1) Como activar la opcion "grabar macros"
http://user.services.openoffice.org/es/forum/viewtopic.php?f=50&t=5299#p19061