Macros/Calc/py002/es
Appearance
TDF LibreOffice Document Liberation Project Blogs comunitarios Weblate Nextcloud Redmine Ask LibreOffice Donar
Descripción
Copiar datos de una fila de una hoja a otra. Copia los datos en la siguiente celda vacía
Código Basic
def main():
SHEET_SOURCE = "Source"
RANGE_SOURCE = "A2:E2"
SHEET_TARGET = "Target"
CELL_TARGET = "A1"
doc = XSCRIPTCONTEXT.getDocument()
sheet_source = doc.Sheets[SHEET_SOURCE]
sheet_target = doc.Sheets[SHEET_TARGET]
range_source = sheet_source[RANGE_SOURCE]
cell_target = sheet_target[CELL_TARGET]
next_free_cell = get_next_free_cell(cell_target)
sheet_source.copyRange(next_free_cell.CellAddress, range_source.RangeAddress)
# ~ Si limpia el origen, el valor 31 limpia solo los datos, no el formato
range_source.clearContents(31)
return
def get_next_free_cell(cell):
cursor = cell.Spreadsheet.createCursorByRange(cell)
cursor.gotoEnd()
col = cell.CellAddress.Column
row = cursor.RangeAddress.EndRow + 1
next_cell = cell.Spreadsheet[row, col]
return next_cell