Мой фрагмент кода выглядит следующим образом:
Код: Выделить всё
def df_to_excel(df, worksheet, startrow=0, startcol=0):
rows = openpyxl.utils.dataframe.dataframe_to_rows(df, header=False, index=False)
for row_id, row_name in enumerate(rows, startrow+1):
for col_id, val in enumerate(row_name, startcol+1):
worksheet.cell(row=row_id, column=col_id).value = val
def update_template(equation_df):
workbook = openpyxl.load_workbook(r"....file", keep_vba=True, read_only=False)
worksheet = workbook.worksheets[0]
num_rows = worksheet.max_row+1
datalist = []
for i in range(1, num_rows):
row = [cell.value for cell in worksheet[i]]
datalist.append(row)
temp_df = pandas.Dataframe(datalist)
for index, row in temp_df.iterrows():
for col in temp_df.columns:
for cella, cellb in zip(equation_df['Col1'], equation_df['Col2']):
if row[col] == cellb[:1]:
row[col] = f"=@{cella}"
df_to_excel(temp_df, worksheet)
newfile = f"{file} Modified.xlsm"
workbook.save(newfile)
Если я заменю это просто < strong>cella, затем оно изменяет уравнение, но просто отображает его в виде строки в новом файле Excel, а не в виде уравнения Excel.
Пожалуйста, подскажите мне.
Подробнее здесь: https://stackoverflow.com/questions/792 ... ated-excel
Мобильная версия