簡體   English   中英

在Python中使用XLWT在Excel中附加行

[英]append rows in Excel using XLWT in Python

如何在Python中使用XLWT或XLRD查找總行數? 我有一個excel文件(accounts.xls),想在其中添加行。

我在這里遇到錯誤-AttributeError:“ Sheet”對象沒有屬性“ write”

from xlrd import open_workbook
from xlwt import Workbook
def saveWorkSpace(fields,r):
    wb = open_workbook('accounts.xls')
    ws = wb.sheet_by_index(0)
    r = ws.nrows
    r += 1
    wb = Workbook()
    ws.write(r,0,fields['name'])
    ws.write(r,1,fields['phone'])
    ws.write(r,2,fields['email'])
    wb.save('accounts.xls')
    print 'Wrote accounts.xls'

這是上述問題的解決方案

import xlrd
import xlwt
from xlutils.copy import copy
def saveWorkSpace(fields):
    rb = xlrd.open_workbook('accounts.xls',formatting_info=True)
    r_sheet = rb.sheet_by_index(0) 
    r = r_sheet.nrows
    wb = copy(rb) 
    sheet = wb.get_sheet(0) 
    sheet.write(r,0,fields['name'])
    sheet.write(r,1,fields['phone'])
    sheet.write(r,2,fields['email'])
    wb.save('accounts.xls')
    print 'Wrote accounts.xls'

Python程序,用於將Values添加到Excel工作表的最后一個數據行。

from xlwt import Workbook
from  xlrd import open_workbook
import openpyxl


# Function to get the last RowCount in the Excel sheet , change the index of the sheet accordingly to get desired sheet.
def getDataColumn():
    #define the variables
    rowCount=0
    columnNumber=0
    wb = open_workbook('C:\\Temp\\exp\\data.xlsx')
    ws = wb.sheet_by_index(0) 
    rowCount = ws.nrows
    rowCount+=1
    columnNumber=1    
    print(rowCount)
    writedata(rowCount,columnNumber)

#Data to specified cells.
def writedata(rowNumber,columnNumber):
    book = openpyxl.load_workbook('C:\\Temp\\exp\\data.xlsx')
    sheet = book.get_sheet_by_name('Sheet1')
    sheet.cell(row=rowNumber, column=columnNumber).value = 'Appended Data'
    book.save('C:\\Temp\\exp\\data.xlsx')
    print('saved')

getDataColumn()


exit()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM