@dima_love_friends

Как добавить значение в excel таблицу на Python?

Я хочу в excel таблице добавлять значения в ячейки и сразу же сохранять таблицу с новым добавленным рандомным значением.
Использую библиотеку xlwings.
Но когда вызываю метод save, то программа словно циклится.
В итоге она добавила число в таблице (это визуально в таблице видно), но не сохранила. То есть если закрыть таблицу и снова открыть, то этого числа уже нет.
Сюда excel таблицу приложить нельзя, но Вы можете (если нужно)
И дальше числа уже не добавляются.
Как добавлять поочередно числа в пустые ячейки и сразу же сохранять таблицу на текущем этапе?
Код:
import xlwings
from xlwings import Book
import pandas as pd
import random

path_to_excel_file = 'C:/Users/me/Desktop/k.xlsx'

wb = Book(path_to_excel_file)
sheet = wb.sheets['Лист1']

df = pd.read_excel(path_to_excel_file)
count_rows = len(df)
# узнали сколько всего строчек в таблице

table = xlwings.Range(f"1:{count_rows + 1}").value
count = 0
for row in table:
    count += 1
    if count >= 5 and count <= 15:  # начинаем с пятой строки
        if row[5] is None:  # если пустая ячейка в 6 колонке, начиная с пятой строки
            id_for_item = random.randint(1, 10)
            print(id_for_item)
            sheet[f"F{count}"].value = str(id_for_item) # F - шестая колонка в excel, а F6, F7 ... отвечают за номер строки 
            wb.save(path_to_excel_file)  # после выполнения этой строки дальше прога не робит, она словно зациклилась

wb.save(path_to_excel_file)
  • Вопрос задан
  • 344 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы