2016-07-04 89 views
2

我有幾個工作簿,每個工作簿都有三張表。我想遍歷每個工作簿,並將來自sheet_1的所有數據合併到一個新的工作簿_1文件中,sheet_2工作簿__2文件& sheet_3工作簿_3中。循環瀏覽一個文件夾,將幾個Excel表合併爲一列

據我可以告訴下面的腳本做我需要的一切,除了不追加數據,它覆蓋了以前迭代的數據。

爲簡化起見,我縮短了,清理&簡化了我的腳本,但如果需要,我很樂意分享完整的腳本。

import pandas as pd 
import glob 

search_dir= ('/Users/PATH/*.xlsx') 

sheet_names = ['sheet_1','sheet_2','sheet_2'] 

def a_joiner(sheet): 
    for loop_x in glob.glob(search_dir): 
    try: 

     if sheet == 'sheet_1': 
      id_file= pd.ExcelFile(loop_x)        
      df_1 = id_file.parse(sheet, header= None)    
      writer= pd.ExcelWriter('/Users/PATH/%s.xlsx' %(sheet), engine= 'xlsxwriter')       
      df_1.to_excel(writer)      
      writer.save() 

     elif sheet == 'sheet_2': 
      #do same as above 

     else: 
      #and do same as above again 

    except Exception as e: 
     print('Error:',e) 

for sheet in sheet_names: 
    a_joiner(sheet) 

回答

相關問題