Wie verwende ich das Format "read from xlrd" und schreibe durch xlsxwriter in Python?

Ich lese eine Excel-Datei mit xlrd. Ersetzen eines Makros und anschließendes Schreiben durch xlsxwriter. Ohne Formatierungsinformationen zu lesen und zu kopieren, funktioniert der Code, aber wenn ich Formatierungsinformationen hinzufüge, erhalte ich eine Fehlermeldung (unten). Das Code-Snippet ist unten. Ich lese eine XLS-Datei zurück. Wenn ich versuche, das output_workbook zu schließen, erhalte ich eine Fehlermeldung

    filePath = os.path.realpath(os.path.join(inputPath,filename))
    input_workbook = open_workbook(filePath, formatting_info=True)
    input_DataSheet = input_workbook.sheet_by_index(0)
    data = [[input_DataSheet.cell_value(r,c) for c in range(input_DataSheet.ncols)] for r in range(input_DataSheet.nrows)]

    output_workbook = xlsxwriter.Workbook('C:\Users\Manish\Downloads\Sunny\Drexel_Funding\MacroReplacer\demo.xlsx')
    output_worksheet = output_workbook.add_worksheet()

    for rowIndex, value in enumerate(data):
        copyItem = []

        for individualItem in value:
            tempItem = individualItem

            if (isinstance(individualItem, basestring)):
                tempItem = tempItem.replace("[{0}]".format(investorNameMacro), investorName)
                tempItem = tempItem.replace("[{0}]".format(investorPhoneMacro), investorPhone)
                tempItem = tempItem.replace("[{0}]".format(investorEmailMacro), investorEmail)
                tempItem = tempItem.replace("[{0}]".format(loanNumberMacro), loanNumber)

            copyItem.append(tempItem)

        for columnIndex, val in enumerate(copyItem):
            fmt =input_workbook.xf_list[input_DataSheet.cell(rowIndex,columnIndex).xf_index]
            output_worksheet.write(rowIndex,columnIndex, val,fmt)

    output_workbook.close()

Der Fehler, den ich bekomme, ist

Traceback (letzter Aufruf zuletzt): Datei "C: /Users/Manish/Downloads/Sunny/Drexel_Funding/MacroReplacer/drexelfundingmacroreplacer.py", Zeile 87, in output_workbook.close () Datei "build \ bdist.win-amd64 \ egg \ xlsxwriter \ workbook.py ", Zeile 297, in der Datei" build \ bdist.win-amd64 \ egg \ xlsxwriter \ workbook.py ", Zeile 605, in der _store_workbook-Datei" build \ bdist.win-amd64 \ egg \ xlsxwriter \ packager.py ", Zeile 131, in _create_package File" build \ bdist.win-amd64 \ egg \ xlsxwriter \ packager.py ", Zeile 189, in _write_worksheet_files File" build \ bdist.win-amd64 \ egg \ xlsxwriter \ worksheet.py ", Zeile 3426, in _assemble_xml_file Datei" build \ bdist.win-amd64 \ egg \ xlsxwriter \ worksheet.py ", Zeile 4829, in _write_sheet_data Datei" build \ bdist.win-amd64 \ egg \ xlsxwriter \ worksheet ". py ", Zeile 5015, in _write_rows Datei" build \ bdist.win-amd64 \ egg \ xlsxwriter \ worksheet.py ", Zeile 5183, in _write_cell AttributeError: 'XF'-Objekt hat kein Attribut' _get_xf_index '

jede Hilfe wird geschätzt

Vielen Dan

Antworten auf die Frage(2)

Ihre Antwort auf die Frage