国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

python - 如何用openpyxl在現有的excel文件中寫入數據

瀏覽:165日期:2022-08-20 17:18:41

問題描述

openpyxl文檔里面有介紹把數據寫入單個單元格,和逐行寫入數據。但是沒有介紹怎么批量把數據寫入指定的行或列。想請大神指點一下。python - 如何用openpyxl在現有的excel文件中寫入數據

比如我想在第二行這里批量寫入10行新的數據(格式和原表格一樣),原有的數據往后面排,或者D列寫入一列數據。

問題解答

回答1:

pandas讀到dataframe里面,再改變dataframe,寫入到excel中,代碼最簡單

回答2:

樓上的方法挺好,就是安裝pandas比較麻煩,新手可能不太好搞定,我倒是有個笨方法

from win32com.client import Dispatch import win32com.clientclass MyExcel: def __init__(self, filename=None): # 打開文件或者新建文件(如果不存在的話)self.xlApp = win32com.client.Dispatch(’Excel.Application’)if filename: self.filename = filename self.xlBook = self.xlApp.Workbooks.Open(filename)else: self.xlBook = self.xlApp.Workbooks.Add() self.filename = ’’ def save(self, newfilename=None): # 保存文件if newfilename: self.filename = newfilename self.xlBook.SaveAs(newfilename)else: self.xlBook.Save() def close(self): # 關閉文件self.xlBook.Close(SaveChanges=0)del self.xlApp def inserRow(self, sheetname, row):sht = self.xlBook.Worksheets(sheetname)sht.Rows(row).Insert()if __name__ == '__main__': xls = MyExcel(r’d:jason.liDesktopempty_book.xlsx’) xls.inserRow(’sheet1’,6) xls.save() xls.close()

如果嫌麻煩,可以使用繼承,重寫類的方法。我就提供一個實現的小思路,效率比較低,也可以修改一下代碼,一次插入多行,用win32com操作Excel很方便,怎么需要怎么寫。

標簽: python
相關文章:
主站蜘蛛池模板: 房产| 陵水| 河北省| 鄂伦春自治旗| 泽州县| 天峻县| 沅江市| 抚州市| 巨野县| 富民县| 长宁县| 宜兰县| 二手房| 宜都市| 察隅县| 上犹县| 荆州市| 武义县| 黔西| 兰考县| 德惠市| 正阳县| 巢湖市| 垫江县| 凤山市| 凯里市| 右玉县| 华亭县| 托里县| 阳高县| 托里县| 新源县| 甘孜县| 丽江市| 饶平县| 兰州市| 阳东县| 逊克县| 洪洞县| 龙海市| 沙河市|