<legend id='QbkDi'><style id='QbkDi'><dir id='QbkDi'><q id='QbkDi'></q></dir></style></legend>

      <tfoot id='QbkDi'></tfoot>
    1. <i id='QbkDi'><tr id='QbkDi'><dt id='QbkDi'><q id='QbkDi'><span id='QbkDi'><b id='QbkDi'><form id='QbkDi'><ins id='QbkDi'></ins><ul id='QbkDi'></ul><sub id='QbkDi'></sub></form><legend id='QbkDi'></legend><bdo id='QbkDi'><pre id='QbkDi'><center id='QbkDi'></center></pre></bdo></b><th id='QbkDi'></th></span></q></dt></tr></i><div id='QbkDi'><tfoot id='QbkDi'></tfoot><dl id='QbkDi'><fieldset id='QbkDi'></fieldset></dl></div>
        <bdo id='QbkDi'></bdo><ul id='QbkDi'></ul>

    2. <small id='QbkDi'></small><noframes id='QbkDi'>

    3. Python 和 Excel:覆盖现有文件总是提示,尽管 XlSa

      时间:2023-09-11
      <legend id='UxwXT'><style id='UxwXT'><dir id='UxwXT'><q id='UxwXT'></q></dir></style></legend>
      <tfoot id='UxwXT'></tfoot>
          • <bdo id='UxwXT'></bdo><ul id='UxwXT'></ul>

                <tbody id='UxwXT'></tbody>

              1. <small id='UxwXT'></small><noframes id='UxwXT'>

              2. <i id='UxwXT'><tr id='UxwXT'><dt id='UxwXT'><q id='UxwXT'><span id='UxwXT'><b id='UxwXT'><form id='UxwXT'><ins id='UxwXT'></ins><ul id='UxwXT'></ul><sub id='UxwXT'></sub></form><legend id='UxwXT'></legend><bdo id='UxwXT'><pre id='UxwXT'><center id='UxwXT'></center></pre></bdo></b><th id='UxwXT'></th></span></q></dt></tr></i><div id='UxwXT'><tfoot id='UxwXT'></tfoot><dl id='UxwXT'><fieldset id='UxwXT'></fieldset></dl></div>
                本文介绍了Python 和 Excel:覆盖现有文件总是提示,尽管 XlSaveConflictResolution 值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                问题描述

                我正在使用 Python 程序中的 Excel.Application COM 对象打开 CSV 文件并将其保存为 Excel 工作簿.如果目标文件已存在,则会提示我以下消息:此位置已存在名为 '...' 的文件.您要替换它吗?"尽管我已经设置了 XlSaveConflictResolution 值到 xlLocalSessionChanges,它应该会自动覆盖更改而不提示 - 或者我是这么认为的.

                I'm using the Excel.Application COM object from a Python program to open a CSV file and save it as an Excel workbook. If the target file already exists, then I am prompted with this message: "A file named '...' already exists in this location. Do you want to replace it?" That message comes up despite the fact that I have set the XlSaveConflictResolution value to xlLocalSessionChanges, which is supposed to automatically overwrite the changes without prompting -- or so I thought.

                我使用的是 Microsoft Office Excel 2007 (12.0.6535.5002) SP2 MSO 和 ActivePython 2.6.5.14.我已经使用常量和整数尝试了所有三个 XlSaveConflictResolution 值.我没有尝试过不同版本的 Excel.

                I'm using Microsoft Office Excel 2007 (12.0.6535.5002) SP2 MSO and ActivePython 2.6.5.14. I have tried all three of the XlSaveConflictResolution values using both constants and integers. I have not tried different versions of Excel.

                这是一个代码片段:

                import win32com.client
                xl = win32com.client.gencache.EnsureDispatch("Excel.Application")
                wb = xl.Workbooks.Open(r"C:somefile.csv")
                wb.SaveAs(r"C:somefile.xls", win32com.client.constants.xlWorkbookNormal, 
                    None, None, False, False, win32com.client.constants.xlNoChange, 
                    win32com.client.constants.xlLocalSessionChanges)
                

                以下是 Microsoft 关于 Excel 工作簿对象的 SaveAs 方法的规范:http://msdn.microsoft.com/en-us/library/microsoft.office.tools.excel.workbook.saveas(VS.80).aspx

                And here's the spec from Microsoft about the SaveAs method for an Excel workbook object: http://msdn.microsoft.com/en-us/library/microsoft.office.tools.excel.workbook.saveas(VS.80).aspx

                这可能是 Excel 2007 中的一个新功能",还是我做错了什么?

                Could this be a new "feature" in Excel 2007, or did I just do something wrong?

                推荐答案

                在保存文件前设置 DisplayAlertsFalse 以抑制警告对话框:

                Before saving the file set DisplayAlerts to False to suppress the warning dialog:

                xl.DisplayAlerts = False
                

                文件保存后,最好将DisplayAlerts设置回True:

                After the file is saved it is usually a good idea to set DisplayAlerts back to True:

                 xl.DisplayAlerts = True
                

                这篇关于Python 和 Excel:覆盖现有文件总是提示,尽管 XlSaveConflictResolution 值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                上一篇:通过已注册的 TLB 从 python 访问未注册的 COM 对象 下一篇:如何将 POINT 结构传递给 Python 中的 ElementFromPoin

                相关文章

                最新文章

                  <tfoot id='16WbO'></tfoot>
                1. <legend id='16WbO'><style id='16WbO'><dir id='16WbO'><q id='16WbO'></q></dir></style></legend>

                    <small id='16WbO'></small><noframes id='16WbO'>

                  1. <i id='16WbO'><tr id='16WbO'><dt id='16WbO'><q id='16WbO'><span id='16WbO'><b id='16WbO'><form id='16WbO'><ins id='16WbO'></ins><ul id='16WbO'></ul><sub id='16WbO'></sub></form><legend id='16WbO'></legend><bdo id='16WbO'><pre id='16WbO'><center id='16WbO'></center></pre></bdo></b><th id='16WbO'></th></span></q></dt></tr></i><div id='16WbO'><tfoot id='16WbO'></tfoot><dl id='16WbO'><fieldset id='16WbO'></fieldset></dl></div>
                    • <bdo id='16WbO'></bdo><ul id='16WbO'></ul>