Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用win32com将Python=XML转换为Excel中的表格格式_Python_Excel_Xml_Pycharm - Fatal编程技术网

使用win32com将Python=XML转换为Excel中的表格格式

使用win32com将Python=XML转换为Excel中的表格格式,python,excel,xml,pycharm,Python,Excel,Xml,Pycharm,尝试打开xml文件时,系统会提示我三个选项: “请选择打开此文件的方式: 作为XML表 作为只读工作簿 使用“XML源”任务窗格。“ 选项1基本上是在excel工作表中的表中打开xml文件,该工作表美观且易于使用。更重要的是,我已经用R对这种格式进行了所有数据清理 现在,我想自动化打开xml文件的过程,选择“作为xml表打开”,然后保存为xlsx文件 我非常接近使用win32com来实现这一点,但问题是该文件似乎保存在“作为只读工作簿”模式下,这意味着所有列标题都被弄乱了 我的问题:我想将一个X

尝试打开xml文件时,系统会提示我三个选项:

“请选择打开此文件的方式:

  • 作为XML表
  • 作为只读工作簿
  • 使用“XML源”任务窗格。“
  • 选项1基本上是在excel工作表中的表中打开xml文件,该工作表美观且易于使用。更重要的是,我已经用R对这种格式进行了所有数据清理

    现在,我想自动化打开xml文件的过程,选择“作为xml表打开”,然后保存为xlsx文件

    我非常接近使用win32com来实现这一点,但问题是该文件似乎保存在“作为只读工作簿”模式下,这意味着所有列标题都被弄乱了

    我的问题:我想将一个XML文件转换成一个表格,就像excel中的功能那样,然后立即使用win32com将其保存为xlsx格式(甚至不打开XML文件)

    我当前的代码:

    excel = win32com.client.DispatchEx('Excel.Application')
    # excel.visible = True
    xml1 = excel.Workbooks.Open(os.getcwd() + "\\" + "1.xml")
    xml1.SaveAs(os.getcwd() +"\\" + "1.xlsx")
    xml1.Close()
    

    我不想打开每个xml文件,这不是很省时。

    在工作簿加载xml之前,您无法转换。您可以在后台使用
    可见
    属性将进程设置为
    False
    。此外,请查看所需的格式。阅读辩论。谢谢你的提示!您指向Workbook.OpenXML的链接非常有用。这里有一个选项可以作为表格而不是工作簿打开:xml1=excel.Workbooks.open(os.getcwd()+“\\”+“1.xml”,1,2)。2指定该选项,而默认值为0,表示在只读模式下打开。