Macros/Calc/ba002/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. Copiar datos en la siguiente celda libre.
Código Basic
Sub Main()
SHEET_SOURCE = "Source"
RANGE_SOURCE = "A2:E2"
SHEET_TARGET = "Target"
CELL_TARGET = "A1"
doc = ThisComponent
source = doc.Sheets.getByName(SHEET_SOURCE)
target = doc.Sheets.getByName(SHEET_TARGET)
range = source.getCellRangeByName(RANGE_SOURCE)
cell = target.getCellRangeByName(CELL_TARGET)
next_free_cell = get_next_free_cell(cell)
source.copyRange(next_free_cell.CellAddress, range.RangeAddress)
'Si limpia el origen, el valor 31 limpia solo los datos, no el formato
range.clearContents(31)
End Sub
Function get_next_free_cell(cell)
cursor = cell.SpreadSheet.createCursorByRange(cell)
cursor.gotoEnd()
col = cell.CellAddress.Column
row = cursor.RangeAddress.EndRow + 1
get_next_free_cell = cell.SpreadSheet.getCellByPosition(col, row)
End Function