2012-06-22 47 views
1
import xlwt 
import xlrd 
import os.path 
import os 
print os.path.abspath(os.curdir) 

#Create workbook and worksheet 

wbk = xlwt.Workbook() 
sheet = wbk.add_sheet('Data_1')#name of the sheet in which new data is there 

row = 0 

f = xlrd.open_workbook('Data_1.xls')#workbook from where data is extracted 
g = xlrd.open_workbook('Data_2.xls')#workbook from where data is extracted 

sheet1 = f.sheet_by_index(0) 
sheet2 = g.sheet_by_index(0) 

for i in xrange(16): 
temp = sheet1.row_values(i) 
print temp 
col = 0 
for element in temp:   
    sheet.write(i,col,element) 
    col += 1 
i += 1 

for j in xrange(16): 
temp = sheet2.row_values(j) 
print temp 
col = 4 
for elements in temp: 
    sheet.write(j,col.element) 
    col +=1 
j+=1 
wbk.save('DATA.xls') #excel sheet name when saved in the folder 

在执行我能够获取Data_1.xls我的控制台上的数据,但它进入第二套for循环时它给我错误,如下所示: -试图将两个单独的Excel表合并为一个

Traceback (most recent call last): 
File "C:/Python26/combining2ExcelSheets.py", line 34, in <module> 
sheet.write(j,col.element) 
AttributeError: 'int' object has no attribute 'element' 

另外一件事,我的两个Excel表(Data_1和Data_2.xls)的第一列都是相同的。如果在我新生成的Excel表中,我想根据各自的第一列值合并和组织数据。应该采取什么行动,以便获得所需的分类Excel表单?

+1

'用于临时元素: sheet.write(J,col.element) COL + = 1'是什么导致了该错误,' col.element'应该是col,element' –

+0

在合并后的wbk.save中,我想将合并的数据写入名为'DATA.xls'的文件中;该文件不是在定义的文件夹中生成的? –

回答

4

错字!

替换:

sheet.write(j,col.element) 

sheet.write(j,col,element) 
+0

有一个[运动来清理堆栈溢出](http://meta.stackexchange.com/q/167342)通过删除这些错字相关的问题,我们真的可以使用你的帮助!你可以通过在这个问题上进行近距离投票来介入一点吗? –

+0

有道理。投票结束。 :) – SuperSaiyan

+0

供参考您保留您的代表超过60天的分数+3的职位。非常感谢! –