Python xlsxwriter模塊


1.簡介:

xlsxWriter支持多種excle功能;與excel完美兼容;寫大文件,速度快且只占用很小的內存空間
不支持讀或者改現有的excel文件

2.安裝:

pip install xlsxwriter

3.使用示例:

import xlsxwriter workbook = xlsxwriter.Workbook('hello.xlsx') # 建立文件 # 建立sheet, 可以work.add_worksheet('employee')來指定sheet名,但中文名會報UnicodeDecodeErro的錯誤 worksheet = workbook.add_worksheet() worksheet.write('A1', 'Hello world') # 向A1寫入 workbook.close() 

4.常用方法

  • 創建工作簿
self.workbook = xlsxwriter.Workbook(self.reportpath) 
  • 添加sheet
sheet = self.workbook.add_worksheet(sheetname) 
  • 添加圖標sheet
sheet=self.workbook.add_chartsheet(sheetname) 
  • 關閉工作簿
self.workbook.close() 
  • 通過sheet名稱獲取sheet
sheet = self.workbook.get_worksheet_by_name(sheetname) 
  • 設置單元格樣式
    def set_coverformat(self,font_size=14,bg_color='#FFFFFF',font_color='#000000',bordernum=1,font_name='微軟雅黑'): ''' 設置封面單元格樣式 :param font_size: 字體大小,默認14 :param bg_color: 背景顏色,默認白色 :param font_color: 字體顏色,默認黑色 :param bordernum: 邊框,默認1-有邊框 :param font_name: 字體,默認微軟雅黑 :return: 單元格樣式 ''' cover_style=self.workbook.add_format( {'align':'center','valign':'vcenter','border':bordernum,'font_size':font_size,'bg_color':bg_color, 'font_color':font_color,'font_name':font_name}) return cover_style def set_cellformat(self,font_size=12,bg_color='#FFFFFF',font_color='#000000',bordernum=1,font_name='微軟雅黑',text_wrap=1): ''' 設置單元格樣式 :param font_size: 字體大小,默認12 :param bg_color: 背景顏色,默認白色 :param font_color: 字體顏色,默認黑色 :param bordernum: 邊框,默認1-有邊框 :param font_name: 字體,默認微軟雅黑 :param text_wrap: 自動換行,默認1-自動換行 :return: 單元格樣式 ''' cell_style=self.workbook.add_format( {'align':'center','valign':'vcenter','border':bordernum,'font_size':font_size,'bg_color':bg_color, 'font_color':font_color,'font_name':font_name,'text_wrap':text_wrap}) return cell_style 
  • 設置單元格寬度
    def set_column_width(self,sheet,rangecell,width): ''' 設置指定單元格的寬度 :param sheetname: sheet名稱 :param rangecell: 單元格范圍,例如'A1:A5',單個單元格就是'A1:A1' :param width: 寬度 ''' sheet.set_column(rangecell,width) 
  • 設置行高
 def set_row_height(self,sheet,rowx,height): ''' 設置指定行的高度 :param sheetname: sheet名稱 :param rowx: 行數(從0開始) :param height: 高度 ''' sheet.set_row(rowx,height) 
  • 編輯單元格
    def write_cell(self,sheet,cell,data,format): ''' 編輯指定sheet下的單元格 :param sheetname: sheet名稱 :param cell: 單元格 :param data: 寫入數據 :param format: 單元格樣式 ''' sheet.write(cell,data,format) 
  • 合並單元格寫入數據
    def write_merge_range(self,sheet,rangecell,data,format): ''' 合並單元格並寫入數據 :param sheetname: sheet名稱 :param rangecell: 合並單元格范圍,例如'D1:D7' :param data: 寫入數據信息 :param format: 單元格樣式 ''' sheet.merge_range(rangecell,data,format) 
  • 設置標簽顏色
    def set_sheetcolor(self,sheetname,color): ''' 設置sheet標簽顏色 :param sheet: sheet :param color: 顏色 ''' sheet=self.get_sheet_byname(sheetname) sheet.set_tab_color(color) 
  • 篩選器
    def autofilter(self,sheetname): ''' 添加自動篩選器 :param sheetname: sheet名稱 :return: ''' sheet = self.get_sheet_byname(sheetname) sheet.autofilter('A1:R1')


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM