Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.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
在一个Excel文件中输入多张工作表”;“报告”;从7个输入文件_Excel_Python 3.x_Vba - Fatal编程技术网

在一个Excel文件中输入多张工作表”;“报告”;从7个输入文件

在一个Excel文件中输入多张工作表”;“报告”;从7个输入文件,excel,python-3.x,vba,Excel,Python 3.x,Vba,Pyhon 3.7.3 Excel 10 14个输入文件:.xls et 1模板:.xls 输出文件:.xls(或更好的.xlsx) 要馈送的模板包含图片、图表/图形。 表中值的副本提供给图形 我使用xlrd库读取输入文件,使用xlwt写入输出文件。 我也尝试过使用openpyxl:没关系 但错误是: WARNING *** OLE2 inconsistency: SSCS size is 0 but SSAT size is non-zero C:\Users\Paul\AppData\Roa

Pyhon 3.7.3 Excel 10

14个输入文件:.xls et 1模板:.xls

输出文件:.xls(或更好的.xlsx)

要馈送的模板包含图片、图表/图形。 表中值的副本提供给图形 我使用xlrd库读取输入文件,使用xlwt写入输出文件。 我也尝试过使用openpyxl:没关系

但错误是:

WARNING *** OLE2 inconsistency: SSCS size is 0 but SSAT size is non-zero
C:\Users\Paul\AppData\Roaming\Python\Python37\site-packages\openpyxl\worksheet\header_footer.py:49: UserWarning: Cannot parse header or footer so it will be ignored
  warn("""Cannot parse header or footer so it will be ignored""")
Traceback (most recent call last):
  File "c:\Users\Paul\.vscode\extensions\ms-python.python-2019.6.24221\pythonFiles\ptvsd_launcher.py", line 43, in <module>
    main(ptvsdArgs)
  File "c:\Users\Paul\.vscode\extensions\ms-python.python-2019.6.24221\pythonFiles\lib\python\ptvsd\__main__.py", line 434, in main
    run()
  File "c:\Users\Paul\.vscode\extensions\ms-python.python-2019.6.24221\pythonFiles\lib\python\ptvsd\__main__.py", line 312, in run_file
    runpy.run_path(target, run_name='__main__')
  File "C:\Program Files (x86)\Python37-32\lib\runpy.py", line 263, in run_path
    pkg_name=pkg_name, script_name=fname)
  File "C:\Program Files (x86)\Python37-32\lib\runpy.py", line 96, in _run_module_code
    mod_name, mod_spec, pkg_name, script_name)
  File "C:\Program Files (x86)\Python37-32\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "c:\Users\Paul\Documents\Applications\Traitement TDF\Entrée\Remplissage du Patron(1).py", line 69, in <module>
    excel(wbs, sheet, ligne_debut, colonne_debut, resultats)
  File "c:\Users\Paul\Documents\Applications\Traitement TDF\Entrée\Remplissage du Patron(1).py", line 33, in excel
    wbs.save(filename='Reporting.xls')
  File "C:\Users\Paul\AppData\Roaming\Python\Python37\site-packages\openpyxl\workbook\workbook.py", line 391, in save
    save_workbook(self, filename)
  File "C:\Users\Paul\AppData\Roaming\Python\Python37\site-packages\openpyxl\writer\excel.py", line 284, in save_workbook
    writer.save(filename)
  File "C:\Users\Paul\AppData\Roaming\Python\Python37\site-packages\openpyxl\writer\excel.py", line 266, in save
    self.write_data()
  File "C:\Users\Paul\AppData\Roaming\Python\Python37\site-packages\openpyxl\writer\excel.py", line 86, in write_data
    self._write_charts()
  File "C:\Users\Paul\AppData\Roaming\Python\Python37\site-packages\openpyxl\writer\excel.py", line 130, in _write_charts
    self._archive.writestr(chart.path[1:], tostring(chart._write()))
  File "C:\Users\Paul\AppData\Roaming\Python\Python37\site-packages\openpyxl\chart\_chart.py", line 123, in _write
    container.view3D = chart.view3D
  File "C:\Users\Paul\AppData\Roaming\Python\Python37\site-packages\openpyxl\descriptors\base.py", line 44, in __set__
    raise TypeError('expected ' + str(self.expected_type))
TypeError: expected <class 'openpyxl.chart._3d.View3D'>
警告***OLE2不一致:SSC大小为0,但SSAT大小为非零
C:\Users\Paul\AppData\Roaming\Python37\site packages\openpyxl\worksheet\header\u footer.py:49:UserWarning:无法解析页眉或页脚,因此将忽略它
警告(“”无法分析页眉或页脚,因此将忽略它“”)
回溯(最近一次呼叫最后一次):
文件“c:\Users\Paul\.vscode\extensions\ms python.python-2019.6.24221\pythonFiles\ptvsd_launcher.py”,第43行,在
干管(ptvsdArgs)
文件“c:\Users\Paul\.vscode\extensions\ms python.python-2019.6.24221\pythonFiles\lib\python\ptvsd\\ uuuuuu main\uuuuuu.py”,第434行,在main中
运行()
文件“c:\Users\Paul\.vscode\extensions\ms python.python-2019.6.24221\pythonFiles\lib\python\ptvsd\\uuuuuu main\uuuuuu.py”,第312行,在run\u文件中
runpy.run\u路径(目标,run\u名称=“”\uu主\uuuuuuuuuuuu')
文件“C:\Program Files(x86)\Python37-32\lib\runpy.py”,第263行,在运行路径中
pkg_name=pkg_name,script_name=fname)
文件“C:\ProgramFiles(x86)\Python37-32\lib\runpy.py”,第96行,在运行模块代码中
模块名称、模块规格、组件名称、脚本名称)
文件“C:\ProgramFiles(x86)\Python37-32\lib\runpy.py”,第85行,在运行代码中
exec(代码、运行\全局)
文件“c:\Users\Paul\Documents\Applications\Traitement TDF\Entrée\Remplissage du Patron(1.py)”,第69行,在
excel(wbs、工作表、ligne_首次亮相、colonne_首次亮相、结果)
excel中的文件“c:\Users\Paul\Documents\Applications\Traitement TDF\Entrée\Remplissage du Patron(1.py)”第33行
wbs.save(filename='Reporting.xls')
文件“C:\Users\Paul\AppData\Roaming\Python37\site packages\openpyxl\workbook\workbook.py”,第391行,保存
保存工作簿(自身,文件名)
文件“C:\Users\Paul\AppData\Roaming\Python37\site packages\openpyxl\writer\excel.py”,第284行,在save\u工作簿中
writer.save(文件名)
文件“C:\Users\Paul\AppData\Roaming\Python37\site packages\openpyxl\writer\excel.py”,第266行,保存
self.write_data()
文件“C:\Users\Paul\AppData\Roaming\Python37\site packages\openpyxl\writer\excel.py”,第86行,在write\u数据中
self.\u编写图表()
文件“C:\Users\Paul\AppData\Roaming\Python37\site packages\openpyxl\writer\excel.py”,第130行,在写图表中
self.\u archive.writestr(chart.path[1:],tostring(chart.\u write())
文件“C:\Users\Paul\AppData\Roaming\Python37\site packages\openpyxl\chart\\u chart.py”,第123行,以书面形式
container.view3D=chart.view3D
文件“C:\Users\Paul\AppData\Roaming\Python37\site packages\openpyxl\descriptors\base.py”,第44行,在\uuu集中__
raise TypeError('预期'+str(自我预期类型))
TypeError:应为
糟糕的解决方案:我已经删除了所有工作表中的图片和图表,可以编写结果文件=“Reporting.xls” 但我必须再次包括图片和重做图表…

其他解决方案:熊猫将额外的列和数字放在一起。坏结果。。。 我留下这个解决方案

请:如何为Excel文件提供图片和图形? 要导入的特定库? 非常感谢

import io
import openpyxl
import xlrd
import xlwt
import os
import shutil
import pyexcel_xls,xlrd
from copy import deepcopy
from xlwt import Workbook, Formula
from openpyxl import load_workbook
from openpyxl import reader
from openpyxl import chartsheet
from openpyxl import chart


def excel(wbs, onglet, ligne_debut, colonne_debut, resultats): 
    # resultat est le contenu du fichier traité
    wb = Workbook()
    dest_filename = str(wbs)

    # copier 4 COLONNES !! 2 à 5 (2,6)
    nb_lignes = len(resultats)
    nb_colonnes = len(resultats[0])

    for row in range(nb_lignes):
        for col in range(nb_colonnes):
            value = resultats[row][col]
            _ = onglet.cell(
                column=colonne_debut + col, 
                row=ligne_debut + row, 
                 # recopie la ligne de resultat[y] [x] 
                 # Adressage relatif depuis coldeb, les colonnes démarrent ensuite de '0'
                value="{0}".format(value))
    wbs.save(filename='Reporting.xls')


wb = xlrd.open_workbook(r'C:\Users\Paul\Documents\Applications\Traitement Societe\Entrée\DaVimCi Societe rapport convergent des coûts_20190619.xls')
wbs = load_workbook(r'C:\Users\Paul\Documents\Applications\Traitement Societe\Entrée\PATRON - Societe reporting financier en cours.xls') 
# print(wbs)
# fdavimci=wb.sheet_by_name('Parc DATA')
def resultats(ligne_debut,ligne_fin,fichier_entrée,name_sheet):
    feuille=fichier_entrée.sheet_by_name(name_sheet)
    n=ligne_debut
    resultats=[feuille.row(n)]
    while n<ligne_fin:
        resultats= resultats+[feuille.row(n+1)]
        n=n+1
    return resultats 

resultats= resultats(8,256,wb,'Parc DATA')
# print(resultats(8,12,wb,'Parc DATA'))


ligne_debut=8
colonne_debut=1

def get_sheet_by_name(workbook, name):
    matches = list(filter(lambda sheet: sheet.title==name, workbook.worksheets))
    if len(matches)==1:
        return matches[0]
    else:
        raise KeyError("Aucune feuille avec le nom '%s'"%name)

sheet = get_sheet_by_name(wbs, "Parc DATA")

excel(wbs, sheet, ligne_debut, colonne_debut, resultats)
导入io
导入openpyxl
导入xlrd
导入xlwt
导入操作系统
进口舒蒂尔
导入pyexcel_xls,xlrd
从复制导入deepcopy
从xlwt导入工作簿,公式
从openpyxl导入加载工作簿
从openpyxl导入读取器
从openpyxl导入图表表
从openpyxl导入图表
def excel(wbs、onglet、ligne_首次亮相、colonne_首次亮相、结果):
#结果:这是菲舍尔特征的内容
wb=工作簿()
dest_filename=str(wbs)
#复印机4科隆!!2 à 5 (2,6)
nb_lignes=len(结果)
nb_colonnes=len(结果[0])
对于范围内的行(对齐):
对于范围内的col(nb_colonnes):
值=结果[行][列]
_=onglet.cell(
column=colonne_首秀+col,
行=直线首秀+行,
#结果对齐记录[y][x]
#科隆德马尔公寓“0”号depuis coldeb的相关地址
value=“{0}”。格式(值))
wbs.save(filename='Reporting.xls')
wb=xlrd.open_工作簿(r'C:\Users\Paul\Documents\Applications\Traitement Societe\Entrée\davisci Societe relate convergent des coāts_20190619.xls')
wbs=load_工作簿(r'C:\Users\Paul\Documents\Applications\Traitement Societe\Entrée\PATRON-Societe reporting Financiar en cours.xls')
#打印(wbs)
#fdavimci=wb.sheet按名称(“Parc数据”)
def结果(首次登录、登录、登录、姓名表):
feuille=fichier_entrée.sheet_by_name(name_sheet)
n=木质素
resultats=[feuille.row(n)]
而