2009-06-03 73 views
1

是否可以將電子表格與gdata API或工作表從一個電子表格複製到其他電子表格?現在我將所有單元格從一個工作表複製到另一個工作表。每個請求一個單元。它太慢了。我讀了關於「細胞批處理」,並寫下這個代碼:將工作表從一個電子表格複製到另一個

 

src_key = 'rFQqEnFWuR6qoU2HEfdVuTw'; dst_key = 'rPCVJ80MHt7K2EVlXNqytLQ' 

sheetcl = gdata.spreadsheet.service.SpreadsheetsService('[email protected]','p') 
dcs = gdata.docs.service.DocsService('[email protected]', 'p') 

src_worksheets = sheetcl.GetWorksheetsFeed(src_key) 
dst_worksheets = sheetcl.GetWorksheetsFeed(dst_key) 

for src_worksheet, dst_worksheet in zip(src_worksheets.entry, dst_worksheets.entry): 

    sheet_id = src_worksheet.id.text.split('/')[-1] 
    dst_sheet_id = dst_worksheet.id.text.split('/')[-1] 

    cells_feed = sheetcl.GetCellsFeed(src_key, sheet_id) 
    dst_cells_feed = sheetcl.GetCellsFeed(dst_key, dst_sheet_id) 

    for cell in cells_feed.entry: 
     dst_cells_feed.AddInsert(cell) 

    sheetcl.ExecuteBatch(dst_cells_feed, dst_cells_feed.GetBatchLink().href) 
 

但它不起作用。正如我想原因是,在內環每個單元都有其ID其中包括spreadsheet_id的:

 

>>> cell.id.text 
'http://spreadsheets.google.com/feeds/cells/rFQqEnFWuR6qoU2HEfdVuTw/default/private/full/R1C1' 
>>> 
 

回答

相關問題