2016-05-03 10 views
1

ほとんどすべての質問を読みましたが、解決策はまだ見つかりません。Python append他のワークブックのシートをExcelに出力する

私はwb1.xlsとwb2.xlsを持っています。

私がしたいのは、シート1にwb1.xls、シート2にwb2を作成することですが、わかりません。何か助けてください。

import xlwt 
import xlrd 
import glob, os 
import numpy as np 
from xlutils.copy import copy 

os.chdir("E:/docs/") 

wb1=[file for file in glob.glob("wb1*")] 
wb2=[file for file in glob.glob("wb2*")] 

s1 = xlrd.open_workbook(filename = wb1[0]) 
s2 = xlrd.open_workbook(filename = wb2[0]) 

... 

私はここにこだわっています....アイデア?私はxlsxではなくxlsで作業しています。

答えて

1

元のワークブックによって異なります。転送する必要がある数式はありますか?セルの書式設定、フォント、スタイル、ハイライトなどそれが単なる生データであれば、それは十分単純です。

import xlrd 
import xlwt 

# open first excel file, store number of rows,cols and sheet name 
wb_1 = open_workbook("file1.xls") 
sheet_1 = wb.sheet_by_index(0) 
maxRows_1 = sheet_1.nrows 
maxCols_1 = sheet_1.ncols 
sName_1 = sheet_1.name 

i = 0 
j = 0 

# create output excel file 
wb_out = xlwt.Workbook() 
sheet_out_1 = wb_out.add_sheet(sName_1) 

# Loop through writing each cell value 
while i<maxRows_1: 
    while j<maxCols_1: 
     sheet_out_1.write(i,j, sheet_1.cell(i,j).value) 
     j += 1 
    j = 0 
    i += 1 

# repeat for second excel file 
# then save your new excel 

wb_out.save("newFile.xls") 

スタイルやハイライトに関心がなければ機能します。

これは、Excelで日付を処理しないため、浮動小数点として格納されます。日付を処理する必要がある場合、それらを解析する必要があります。それらを助けるためにthisを検討してください。

関連する問題