Как проверить, что лист Excel уже существует в рабочей книге? - PullRequest
0 голосов
/ 23 января 2019

Я хочу проверить, существует ли лист Excel в текущей рабочей книге.

Вот код:

import xlwt
from xlwt import Workbook
import xlsxwriter

lst = ['Task', 'Status', 'Created_Date', 'Moved_Date']
value = []

wb = Workbook()

def write_excel(fileName, sheetName, *args):
    ws = wb.add_sheet(sheetName)

    style0 = xlwt.easyxf('font: bold on')
    for col, value in enumerate(lst):
        ws.write(0, col, value, style0)
        ws.col(col).width = 0x0d00 + col
        # for row, value in enumerate():

    wb.save(fileName)

write_excel('sample_xl.xls', 'sheet1', lst)

1 Ответ

0 голосов
/ 24 января 2019

Я посмотрел на документы для xlwt , и, похоже, есть только add_sheet без способа обнаружения дубликатов или извлечения существующих листов. С другой стороны, xlsxwriter docs, кажется, имеет лучший метод add_worksheet , поскольку он вызывает исключение для дубликата (который вы можете перехватить и обработать).

Итак, как-то так:

try:
    worksheet = workbook.add_worksheet(sheetName)
except xlsxwriter.exceptions.DuplicateWorksheetName:
    worksheet = workbook.get_worksheet_by_name(sheetName)

Всегда полезно прочитать документы по библиотекам, которые вы используете для ответов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...