-3
我有一個非常巨大的excel文件。在幾行之間有「------------」這個字符串。我想將文件從「------------」分割爲另一個「------------」,並將它們命名爲「 - 」 ----------「的下一個單元格。請幫助我做到這一點。將一個巨大的excel文件分割成多個文件
我有一個非常巨大的excel文件。在幾行之間有「------------」這個字符串。我想將文件從「------------」分割爲另一個「------------」,並將它們命名爲「 - 」 ----------「的下一個單元格。請幫助我做到這一點。將一個巨大的excel文件分割成多個文件
我會做的是使用類似於:http://www.python-excel.org/。
pip install xlrd xlwt
xlrd - 讀取Excel文件
xlwt - 寫入Excel文件
話,我會嘗試這樣的事:
import xlrd
import xlwt
def write_rows(batch, filename):
current_batch_xls = xlwt.Workbook(encoding='utf-8')
first_sheet = current_batch_xls.add_sheet(filename + ' sheet')
for row_number, row in enumerate(batch):
for cell_number, cell in enumerate(row):
first_sheet.write(row_number, cell_number, cell.value, style=cell.xf_index)
current_batch_xls.save(filename)
FILENAME='big-excel-spreadsheet.xls'
DELIMITER='------------'
big_spreadsheet = xlrd.open_workbook(FILENAME)
# assuming you have only one sheet
sheet = big_spreadsheet.sheet_by_index(0)
current_batch_of_rows = []
for row in xrange(2, sheet.nrows):
if row.cell(row, 0) == DELIMITER:
write_rows(current_batch_of_rows, filename=row.cell(row, 1))
current_batch_of_rows = []
continue
current_batch_of_rows.append(sheet.row(row))
未經檢驗。對於xlrd
和xlwt
,文檔看起來非常糟糕。
你可以上傳一個xls電子表格樣本來測試嗎?它會一直是「------------」旁邊的單元嗎? – 2014-08-30 22:02:51
@MahmoudAbdelkader它將始終是「------------」旁邊的單元 – user3783999 2014-08-30 22:03:41
你在哪個平臺上? – 2014-08-30 22:15:14