婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > python openpyxl 帶格式復制表格的實現

python openpyxl 帶格式復制表格的實現

熱門標簽:電銷機器人 金倫通信 南京crm外呼系統排名 北京外呼電銷機器人招商 400電話 申請 條件 鄭州智能外呼系統中心 crm電銷機器人 汕頭電商外呼系統供應商 云南地圖標注 賓館能在百度地圖標注嗎

有合并單元格的,先把合并單元格復制過去,合并單元格用wm=list(zip(wbsheet.merged_cells))得出合并單元格列表,把其中的(CellRange A1:A4>,) 替換成為A1:A4格式

再從新表中合并單元格

再用.has_style: #拷貝格式 測試是否有格式,再復制格式和數據

其中:

font(字體類):字號、字體顏色、下劃線等

fill(填充類):顏色等

border(邊框類):設置單元格邊框

alignment(位置類):對齊方式

number_format(格式類):數據格式

protection(保護類):寫保護

import os							#找文件目錄
import win32com.client as win32 	#操作excel文件
from tqdm import tqdm 				#進度條顯示
from openpyxl import load_workbook # 讀取時導入這個
from openpyxl.styles import Font, Alignment #設置單元格格式
from openpyxl.utils import get_column_letter, column_index_from_string
from openpyxl.styles import PatternFill, Border, Side, Alignment, Protection, Font
from copy import copy
path=input('輸入整理前原始路徑: ')
if path=="":
	path=os.getcwd()
xlsx_lists=[]
xls_lists=[]
for file in os.listdir(path):
 filename=os.path.join(path,file)
 if os.path.isfile(filename):    #是目錄
  if filename.endswith(".xls"):
  	xls_lists.append(filename)
  if filename.endswith(".xlsx"):
  	xlsx_lists.append(filename)
source_file='原始數據.xlsx'
if os.path.exists(os.path.join(os.getcwd(),source_file)):
	os.remove(os.path.join(os.getcwd(),source_file))
choose="1"
excel = win32.gencache.EnsureDispatch('Excel.Application')
# while choose not in "1|2":
#  choose =input("xls轉為xlsx:1 xlsx轉為xls:2 ")
if choose=="1":
	with tqdm(total=len(xls_lists),desc='寫文件數 ',leave=True,unit='個',unit_scale=True,mininterval=0.5,bar_format=None) as pbar:
		for xls_list in xls_lists:
			pbar.update(1)
			wb = excel.Workbooks.Open(xls_list)
			wb.SaveAs(xls_list+"x", FileFormat = 51) #FileFormat = 51 is for .xlsx extension
			wb.Close()        #FileFormat = 56 is for .xls extension
		pbar.close()
else:
	with tqdm(total=len(xls_lists),desc='寫文件數 ',leave=True,unit='個',unit_scale=True,mininterval=0.5,bar_format=None) as pbar:
		for xlsx_list in xlsx_lists:
			pbar.update(1)
			wb = excel.Workbooks.Open(xlsx_list)
			wb.SaveAs(xlsx_list[0:len(xlsx_list)-1], FileFormat = 56) #FileFormat = 51 is for .xlsx extension
			wb.Close() 
		pbar.close()
excel.Application.Quit()
tag_file='拆分后表.xlsx'
totaldata=pd.DataFrame()
writer=pd.ExcelWriter(tag_file)
totaldata.to_excel(writer, 'sheet')
writer.save()
book = load_workbook(tag_file)   #能寫入已存在表中
wb = load_workbook('原始數據.xlsx')
for sheet in wb.sheetnames:
	print(sheet)
	wbsheet=wb[sheet]
	for num in range(3):
		name=wbsheet.cell(1,num*15+10).value
		wbsheet_new = book.create_sheet(name,0)
		wm=list(wbsheet.merged_cells) #開始處理合并單元格形式為“(CellRange A1:A4>,),替換掉(CellRange 和 >,)' 找到合并單元格
		#print (list(wm))
		if len(wm)>0 :
			for i in range(0,len(wm)):
				cell2=str(wm[i]).replace('(CellRange ','').replace('>,)','')
				#print("MergeCell : %s" % cell2)
				wbsheet_new.merge_cells(cell2)
		for rows in range(40):
			wbsheet_new.row_dimensions[rows+1].height = wbsheet.row_dimensions[rows+1].height 
			for col in range(14):
				wbsheet_new.column_dimensions[get_column_letter(col+1)].width = wbsheet.column_dimensions[get_column_letter(col+1)].width
				wbsheet_new.cell(row=rows+1,column=col+1,value=wbsheet.cell(rows+1,num*15+col+1).value)
				if wbsheet.cell(rows+1,num*15+col+1).has_style:	#拷貝格式
					wbsheet_new.cell(row=rows+1,column=col+1).font = copy(wbsheet.cell(rows+1,num*15+col+1).font)
					wbsheet_new.cell(row=rows+1,column=col+1).border = copy(wbsheet.cell(rows+1,num*15+col+1).border)
					wbsheet_new.cell(row=rows+1,column=col+1).fill = copy(wbsheet.cell(rows+1,num*15+col+1).fill)
					wbsheet_new.cell(row=rows+1,column=col+1).number_format = copy(wbsheet.cell(rows+1,num*15+col+1).number_format)
					wbsheet_new.cell(row=rows+1,column=col+1).protection = copy(wbsheet.cell(rows+1,num*15+col+1).protection)
					wbsheet_new.cell(row=rows+1,column=col+1).alignment = copy(wbsheet.cell(rows+1,num*15+col+1).alignment)
wb.close()
book.save('拆分后表.xlsx')
book.close()

上例中,因為要把一個表拆分為三個,所以要循環三次

補充:python-excel 之帶有格式及合并單元格樣式的表格復制

代碼如下:

from openpyxl import load_workbook
 
 
def copy_excel(totle_excel,totle_sheetname,down_excel,down_sheetname):
 down = load_workbook(down_excel)
 totle = load_workbook(totle_excel)
 totle_sheet = totle[totle_sheetname]
 down_sheet = down[down_sheetname]
 # 兩個for循環遍歷整個excel的單元格內容
 for i, row in enumerate(down_sheet.iter_rows()):
  for j, cell in enumerate(row):
   totle_sheet.cell(row=i + 1, column=j + 1, value=cell.value)
 totle.save(totle_excel)

代碼說明:

文件內容是從down_excel的down_sheetname復制到totle_excel的totle_sheetname

說明:

以上代碼可以將格式以及合并單元格的樣式均復制到另一張表

注意:

如果你是跨excel文件的復制且帶有公式,不建議使用

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • python 辦公自動化——基于pyqt5和openpyxl統計符合要求的名單
  • Python Excel處理庫openpyxl詳解
  • python使用openpyxl庫讀寫Excel表格的方法(增刪改查操作)
  • Python利器openpyxl之操作excel表格
  • Python離線安裝openpyxl模塊的步驟
  • 解決python 使用openpyxl讀寫大文件的坑
  • Python openpyxl 無法保存文件的解決方案
  • python 使用openpyxl讀取excel數據
  • python openpyxl的使用方法

標簽:文山 昆明 石家莊 懷化 錫林郭勒盟 西寧 梅州 浙江

巨人網絡通訊聲明:本文標題《python openpyxl 帶格式復制表格的實現》,本文關鍵詞  python,openpyxl,帶,格式,復制,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《python openpyxl 帶格式復制表格的實現》相關的同類信息!
  • 本頁收集關于python openpyxl 帶格式復制表格的實現的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产精品一区在线| wwwwxxxxx欧美| 久久免费午夜影院| 五月天激情小说综合| 久久精品国产77777蜜臀| 久久国产剧场电影| 国产精品自拍一区| 色欧美乱欧美15图片| 日韩欧美美女一区二区三区| 中文在线一区二区| 日韩专区一卡二卡| 国产91精品入口| 欧美一区二区三区视频免费| 国产精品成人午夜| 一区二区三区**美女毛片| 免费成人你懂的| 99精品国产91久久久久久| 欧美一区二区三区四区视频| 亚洲欧洲另类国产综合| 日本最新不卡在线| 91亚洲永久精品| 久久久综合九色合综国产精品| 亚洲美女精品一区| 国产成人午夜精品影院观看视频 | 成人av在线电影| 欧美日韩成人激情| 国产精品电影院| 国产原创一区二区| 欧美美女激情18p| 毛片一区二区三区| 亚洲国产sm捆绑调教视频 | 91视视频在线直接观看在线看网页在线看| 日韩欧美国产三级电影视频| 国产精品亚洲第一区在线暖暖韩国| 中文乱码免费一区二区| 欧美手机在线视频| 51精品视频一区二区三区| 亚洲综合一区二区三区| 激情综合亚洲精品| 欧美日韩激情一区二区| 国产精品卡一卡二卡三| 麻豆精品在线播放| 欧美精品日韩一区| 亚洲3atv精品一区二区三区| 色猫猫国产区一区二在线视频| 久久一区二区三区国产精品| 青娱乐精品视频在线| 精品视频123区在线观看| 亚洲午夜一区二区三区| 色综合久久久网| 中文字幕日本乱码精品影院| 成人性生交大片免费看中文 | 国产精品免费丝袜| 国产在线精品不卡| 久久综合五月天婷婷伊人| 久久亚洲私人国产精品va媚药| 国产69精品一区二区亚洲孕妇| 亚洲精品日韩一| 中文字幕亚洲在| www国产成人| 中文字幕av一区二区三区免费看 | 欧美在线综合视频| 欧美顶级少妇做爰| 精品乱人伦小说| 国产在线一区观看| 免费精品视频最新在线| 色婷婷久久久综合中文字幕 | 91久久精品一区二区| 国产一区二区三区免费| 亚洲一区二区欧美激情| 国产欧美日韩一区二区三区在线观看| 国产精品影视网| 精品一区二区三区在线播放| 青青草国产精品97视觉盛宴| 国产欧美在线观看一区| 日韩一区二区在线观看视频| 在线一区二区视频| 免费不卡在线观看| 性感美女极品91精品| 麻豆中文一区二区| 丝袜美腿高跟呻吟高潮一区| 五月激情丁香一区二区三区| 亚洲一区二区在线免费看| 亚洲午夜影视影院在线观看| 95精品视频在线| 精品国产欧美一区二区| 青娱乐精品在线视频| 一本色道a无线码一区v| 日韩欧美中文字幕精品| 久久日韩精品一区二区五区| 日韩欧美一二区| 精品一区二区三区在线观看| 国产日韩欧美综合在线| 99久久精品国产一区二区三区| 亚洲免费在线视频一区 二区| 欧美视频中文字幕| 久久99国产精品麻豆| 欧美经典一区二区| 日韩成人免费电影| 91在线精品秘密一区二区| 欧美精品一区二区在线播放| 肉肉av福利一精品导航| 日韩精品成人一区二区三区| 色偷偷久久人人79超碰人人澡| 在线看不卡av| 欧美一区二区三区在线看| 久久午夜免费电影| 欧美精品一区二区三区视频| 国产精品你懂的在线| 亚洲精品国产a久久久久久| 日韩国产精品91| 激情深爱一区二区| 色播五月激情综合网| 欧美精品一区在线观看| 国产成人日日夜夜| 国产精品三级电影| 自拍视频在线观看一区二区| 日韩你懂的电影在线观看| 精品999在线播放| 成人午夜精品在线| 久久久综合九色合综国产精品| 日韩影院免费视频| 欧美日产国产精品| 亚洲综合一二三区| xnxx国产精品| 在线中文字幕一区| 免费观看日韩电影| 亚洲精品国产a| 中文字幕不卡在线播放| 久久精品视频一区二区三区| 欧美一区二区三区视频免费| 欧美三电影在线| 色妞www精品视频| zzijzzij亚洲日本少妇熟睡| 国产一区二区福利视频| 美腿丝袜一区二区三区| 美日韩一级片在线观看| 日韩不卡一二三区| 亚洲网友自拍偷拍| 一区二区久久久| 亚洲一区日韩精品中文字幕| 国产精品夫妻自拍| 中文字幕在线免费不卡| 国产精品免费aⅴ片在线观看| 久久免费电影网| 久久久精品天堂| 国产精品毛片久久久久久久| 国产高清不卡一区| 亚洲精品你懂的| 久久色在线观看| 丝袜美腿成人在线| 亚洲美女一区二区三区| 欧美人xxxx| 亚洲一区二区三区国产| 中文字幕av一区二区三区免费看 | av一区二区三区黑人| 26uuu成人网一区二区三区| 美女一区二区久久| 精品1区2区在线观看| 精品夜夜嗨av一区二区三区| 日韩免费看的电影| 国产精品福利影院| 在线观看av一区| 国产精品午夜春色av| 91首页免费视频| 亚洲成人你懂的| 欧美一级淫片007| 国产乱一区二区| 亚洲黄色小说网站| 日韩欧美成人一区二区| 波多野结衣中文一区| 一区二区三区成人| 欧美喷水一区二区| 老司机一区二区| 欧美精品色综合| 男男视频亚洲欧美| 91 com成人网| 日本中文字幕一区二区视频 | 7799精品视频| 一区二区高清免费观看影视大全| 亚洲资源中文字幕| 成人一区二区三区视频在线观看| 91在线小视频| 国产精品一区在线观看你懂的| 粉嫩av一区二区三区粉嫩 | 国产精品一卡二| 国产成人午夜99999| 亚洲超丰满肉感bbw| 亚洲激情六月丁香| 久久老女人爱爱| 亚洲国产综合视频在线观看| 色婷婷av久久久久久久| 精品国产亚洲一区二区三区在线观看 | 一区二区三区免费观看| 欧美在线观看视频一区二区三区| 亚洲地区一二三色| 中文字幕av一区二区三区高| 欧美亚洲国产一区在线观看网站| 麻豆精品在线视频| 亚洲黄色录像片|