Skip to main content

Метод CellRange:copyInto

Метод позволяет копировать (аналог Ctrl+C, Ctrl+V в редакторе таблиц) ячейки текущего диапазона в заданную позицию.

Метод CellRange:copyInto реализован только в табличных документах и может использоваться в следующих вариантах:

  • копирование диапазона ячеек в рамках одного листа табличного документа;
  • копирование диапазона ячеек между листами табличного документа;
  • копирование диапазона ячеек между разными табличными документами.

Вызов​


copyInto(destination, pastingSettings)

Параметры​

  • destination: целевой диапазон, тип CellRange.

  • pastingSettings: (необязательный) параметры копирования, тип CellRangePastingSettings.

Пример (только для табличного документа)​


local sourceRange = sheetList:getCellRange("A1:B2")
local destRange = sheetList:getCellRange("C3:D4")
sourceRange:copyInto(destRange)

Пример настройки копирования ячеек​


local sheet = document:getBlocks():getTable(0)
local sourceRange = sheet:getCellRange("A1:C4")
local destRange = sheet:getCellRange("D5:F7")
local settings = DocumentAPI.CellRangePastingSettings()

settings.formulasPastingPolicy = DocumentAPI.FormulasPastingPolicy_AsValues
settings.stylesPastingPolicy = DocumentAPI.StylesPastingPolicy_PlainText

sourceRange:copyInto(destRange, settings)

При копировании ячеек в качестве новой позиции достаточно указать верхнюю левую ячейку нового диапазона, однако, если необходимо продублировать исходный блок ячеек, в качестве параметра следует использовать диапазон, превышающий размеры исходного диапазона, но кратный его размерам. Например, при копировании диапазона "A1:B2"(размер 2х2)в диапазон `"B5:E6"`(размер 2х4)блок исходных ячеек продублируется два раза (см. Рисунок).

Дополнительный пример использования приведен в разделе Копирование ячеек в табличном документе.