Как установить общие формулы для ячеек с SheetJS / js-xlsx - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь установить общие формулы при записи в XLSX с помощью https://github.com/SheetJS/js-xlsx. Я задаю формулы с помощью { f: 'A2+B2' }. Я заканчиваю тем, что ячейки в каждой строке имеют одинаковые формулы (например, "= A2 + B2").

Я изучил всю доступную документацию, а также тестовые файлы, но не могу найти ответ,Я проверил этот похожий вопрос как задать формулу для данных ячейки для (экспорт в .xlsx) SheetJS js-xlsx: https://github.com/SheetJS/js-xlsx,, однако он не отвечает на вопрос о том, как создавать общие формулы.

Я использую XLSX.utils.sheet_add_json для добавления каждой строки, потому что они входят в поток и требуют предварительного форматирования и структурирования. Каждая запись имеет одно значение: key: { f: 'A2+B2' }.

const workSheet = XLSX.utils.json_to_sheet([], { header })

...

.map(record => XLSX.utils.sheet_add_json(
  workSheet,
  record,
  {
    skipHeader: true,
    origin: -1,
    dateNF: 'yyyy/mm/dd',
  }
))

...

const workBook = XLSX.utils.book_new()
XLSX.utils.book_append_sheet(workBook, workSheet)
XLSX.write(workBook, { type: 'buffer', bookType: 'xlsx' })

Я ожидал, что формулы будут скорректированы для каждого номера строки (C2 = A2 + B2, C3 = A3 + B3, ...), нофактический результат состоит в том, что каждая строка имеет одинаковые формулы (C2 = A2 + B2, C3 = A2 + B2, ...).

...