Macros/Calc/py001

From The Document Foundation Wiki
< Macros‎ | Calc
Jump to navigation Jump to search
This page contains changes which are not marked for translation.
Other languages:
English • ‎dansk • ‎español • ‎italiano

Description

Copy content cell from Spreadsheet to other. The spreadsheet source should be open.

Python code

import uno
from com.sun.star.table.CellContentType import TEXT, VALUE


def copy_cell():
    doc_source_name = 'source.ods'
    sheet_source_name = 'source'
    cell_source_name = 'A1'

    desktop = XSCRIPTCONTEXT.getDesktop()
    for doc_source in desktop.Components:
        if doc_source.Title == doc_source_name:
            break

    cell_source = doc_source.Sheets[sheet_source_name][cell_source_name]

    doc = XSCRIPTCONTEXT.getDocument()
    cell = doc.CurrentController.ActiveSheet[cell_source_name]

    if cell_source.Type == TEXT:
        cell.String = cell_source.String
    elif cell_source.Type == VALUE:
        cell.Value = cell_source.Value
    else:
        cell.Formula = cell_source.Formula
    return