Найти - Пользователи
Полная версия: Вставка формул в excel (openpyxl)
Начало » Python для новичков » Вставка формул в excel (openpyxl)
1
Irv1n
У меня есть данный код:
 wb = Workbook()
ws = wb.active
listf = [[1,1,1,1], [2,2,2,2], [3,3,3,3]]
calc_lst = [['=СЧЁТЕСЛИ(listf[x];"<>")'], ["=СРЗНАЧ(listf[x]"], ["=СТАНДОТКЛОН(listf[x])"], ['=СТАНДОТКЛОН(listf[x])/корень(СЧЁТЕСЛИ(listf[x];"<>"))']]
def col_writer(row_number, column_number, lst):
    for col in range(len(lst)):
        for row in range(len(lst[col])):
            ws.cell(row+row_number, col+column_number, lst[col][row])
    return wb.save("sample.xlsx")
col_writer(1,2, listf)
К этому коду дополнительно я хочу вставлять список:calc_lst, что бы получилось в таком виде:
Screenshot
Как это можно сделать?

py.user.next
Сделай ещё функции.

Одна функция у тебя должна создавать структуру с данными, которую можно сразу записать в файл. В этой структуре будет адрес (куда писать данные) и сами данные. Эти данные будут вот этими значениями 1 2 3 4.

Вторая функция у тебя должна создавать структуру с данными, которую можно сразу записать в файл. В этой структуре будет адрес (куда писать данные) и сами данные. Эти данные будут формулами с правильными адресами ячеек.

Третья функция должна принимать структуру с данными, в которой есть адрес и сами данные, и писать эту структуру в файл. Чтобы писать структуру в файл, функция должна будет принимать имя файла ещё. А внутри функции будет создаваться эта книжка там и так далее - всё, что нужно, для создания файла. Может, она будет даже существующий файл ещё загружать и доделывать его.

Irv1n
У меня есть данный код:
Чтобы сделать то, что нужно, у тебя написано слишком мало. Адреса в формулах ты не можешь сделать вот так через listf, как ты пытаешься это сделать. Адреса в формулах должны прямо указывать на диапазаны ячеек. Можно там взять какую-то фигню относительную, но лучше будет сделать формулы статическими, которые точно знают, из каких диапазонов ячеек и что и сколько они берут. А для этого нужна какая-то функция, которая точно знает, где какие адреса (где данные лежат, где формулы лежат и так далее).
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB