Есть два excel файла. Один шаблон, другой обычный. Первый файл и файл шаблона имеют статичную одинаковую структуру, с той лишь разницей, что значения ячеек могут отличаться. Нужно сверить значения шаблона со значениями в первом файле. Для работы я использую библиотеку openpyxl. Для меня сложность состоит в том, что нужно проверять заданный диапазон ячеек, хоть он заранее известен и не меняется. Таких диапазонов несколько. Если значение шаблона не совпадает со значением 1 файла, то следует заменить значение 1 файла значением из шаблона. На изображении таблица, которую надо сравнить с другой такой же по структуре таблицей. Цветом выделены ячейки которые надо сравнить.
Итак, написал код, но не могу разобраться как заставить поочередно сравнивать диапозон ячеек из первой книги с диапозоном ячеек со второй. Запутался во вложенных циклах. Код очевидно работает неправильно. Сравнения происходят неправильно. Для начала возьмем маленький диапозон для примера. Дальше по аналогии доделаю код для остальных диапазонов.
import openpyxl
from openpyxl.cell import Cell
wb = openpyxl.load_workbook('./09.03.02_ТИИвБ_ИКБСП_2019.xlsx') #открыли исходный файл
sheet_wb = wb['График'] #выбрали лист 1 файла
shablon = openpyxl.load_workbook('C:/Users/user/Desktop/check.xlsx') #открыли шаблон
sheet_shablon = shablon['График'] #выбрали лист 2 файла
for i in sheet_wb['B13':'J13']: #Обращаемся к диапазону из 1 листа
for cell1 in i: #Обращаемся к значениям из этого диапзона
for j in sheet_shablon['B13':'J13']:
for cell2 in j:
if cell1.value != cell2.value:
cell1.value == cell2.value
wb.save('test1.xlsx')
Пытался так, очевидно не правильно
sheet_wb = wb['График']
sheet_shablon = shablon['График']
for i in sheet_wb['B13':'E13']:
for cell in i:
if sheet_wb[cell].value != sheet_shablon[cell].value:
sheet_wb[cell].value == sheet_shablon[cell].value
Подскажите как можно правильно реализовать. Спасибо заранее