Estaba tratando de copiar un rango de celdas de un libro, a otro libro usando easy macro. (usando OpenOffice 4.1.3 32bit)
Mi código es el siguiente:
Código: Seleccionar todo
from libo import LIBO
app = LIBO()
def main():
doc_origen = app.get_doc('Origen.ods')
hoja_origen = doc_origen.active
rango_origen = hoja_origen['A1:A4']
#hay algunos msgbox (bastantes) es para confirmar que cada dato seleccionado sea correcto.
app.msgbox(doc_origen.title) #muestra el libro correcto.
app.msgbox(hoja_origen) #resultado mostrado es = Libo.LOCalcSheet object at 0x0FDC7990
app.msgbox(rango_origen.address)#muestra el rango correcto.
doc_destino = app.get_doc('Destino.ods')
hoja_destino = doc_destino.active
app.msgbox(doc_destino.title) #muestra el libro correcto.
app.msgbox(hoja_destino) #resultado mostrado es = Libo.LOCalcSheet object at 0x0FDC7DF0
celda_destino = doc_destino.sheets['1']['A1'].get_next_cell()
app.msgbox(celda_destino.address) #Si uso .get_next_cell() muestra el segundo error adjunto.
rango_origen.move(celda_destino)
return
Código: Seleccionar todo
celda_destino = doc_destino.sheets['1']['A1']
app.msgbox(celda_destino.address) #Muestra la hoja y celda correcta.
rango_origen.move(celda_destino)#Aquí se muestra el primer error adjunto.
Código: Seleccionar todo
def __getitem__(self, index):
if PY2:
return self._get_item(index)
return LOCalcSheet(self._obj[index])