Как вставить формулу массива в лист Excel с помощью openpyxl?Python

Программы на Python
Ответить
Anonymous
 Как вставить формулу массива в лист Excel с помощью openpyxl?

Сообщение Anonymous »

Я использую OpenPyxl для создания и изменения листа Excel.
У меня есть следующая формула в Excel:

Код: Выделить всё

=(SUM(IF(LEFT(Balances!$B$2:$B$100,LEN($B4))=$B4,Balances!$D$2:$D$100)))
Эта формула, которая представляет собой «формулу массива», работает, но чтобы написать ее вручную, мне нужно закончить, нажав CTRL+SHIFT+ENTER (потому что это формула массива).Это преобразование приводит к следующей формуле:

Код: Выделить всё

{=(SUM(IF(LEFT(Balances!$B$2:$B$100,LEN($B4))=$B4,Balances!$D$2:$D$100)))}
Я хочу иметь возможность написать эту формулу через OpenPyxl с помощью следующего кода:

Код: Выделить всё

    sheet.cell(row=j, column=i).value = '{=(SUM(IF(LEFT(Balances!$B$2:$B$100,LEN($B4))=$B4,Balances!$D$2:$D$100)))}'
Однако это не работает. OpenPyxl не может с этим справиться. Это дает мне написанную, но не работающую формулу.
Я мог бы сделать это с помощью XLSX Writer
https://xlsxwriter.readthedocs.io/examp ... htmlОднако средство записи XLSX не работает с уже созданными файлами.
Я не вижу, по какому пути идти.

Подробнее здесь: https://stackoverflow.com/questions/572 ... h-openpyxl
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»