другой формат листа уничтожается с помощью openpyxl - PullRequest
0 голосов
/ 03 сентября 2018

Я новичок в python, я пытаюсь написать очень простой скрипт на python, который будет чистить мой файл Excel. Проблема в том, что когда я запускаю код, форматирование ячеек на другом листе (Sheet2), который никак не связан с предыдущим листом (который изменяет код), разрушается. я использую портативную версию WinPython 3.4.4.

Ниже у меня есть этот скрипт, который очищает содержимое Sheet1:

from openpyxl import load_workbook, workbook
wb = load_workbook('sample.xlsx')
sh = wb['Sheet1']

for row in sh['B1:C10']:
for cell in row:
    print(cell.value)
    cell.value = None

wb.save('sample.xlsx') 

Заранее спасибо.

EDIT Извините, если мой вопрос сбил с толку. Пожалуйста, смотрите ссылку для образцов файлов.

Спасибо.

Пример файла до и после запуска скрипта Python


Привет, Чарли,

Спасибо за проверку моего поста. Из прикрепленных примеров файлов вы увидите, что в примере before.xlsx Sheet2 ‘A2’ он имеет 12:00:00 AM, а столбцы Sheet4 E, G и H имеют границы. После запуска приведенного выше сценария у нас теперь есть образец after.xlsx, лист 1 и 2 ‘A2‘ теперь имеет значение -1, а столбцы листа 4 E, G и H не имеют границ. Я пытался поиграть с этим со дня, когда я опубликовал этот вопрос, но единственное, что я мог сделать, - это просто снова отформатировать ячейки. Но все же мой вопрос заключается в том, почему этот простой код влияет на другой лист, если он предназначен только для изменения конкретного листа Sheet1.

...