欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報(bào)邀請(qǐng)碼778899分享:貨物數(shù)據(jù)處理pandas版

柚子快報(bào)邀請(qǐng)碼778899分享:貨物數(shù)據(jù)處理pandas版

http://yzkb.51969.com/

1求和

from openpyxl import load_workbook

import pandas as pd

def print_hi(name):

# Use a breakpoint in the code line below to debug your script.

print(f'Hi, {name}') # Press Ctrl+F8 to toggle the breakpoint.

# Press the green button in the gutter to run the script.

if __name__ == '__main__':

filePath1 = './src/原始數(shù)據(jù)精修.xlsx'

df1 = pd.read_excel(filePath1, sheet_name='銷售明細(xì)')

index_list = ['部門名稱', '年度名稱', '季節(jié)名稱', '商品代碼', '商品名稱', '品牌名稱', '品類名稱', '顏色名稱']

# 求和方法二,需將文本的列指定為索引

df1 = df1.set_index(index_list)

df1['合計(jì)'] = df1.apply(lambda x: x.sum(), axis=1)

filePath2 = './src/處理結(jié)果精修.xlsx'

#重置索引,防止單元格合并

df1 = df1.reset_index()

df1.to_excel(filePath2, sheet_name="new_sheet", index=False, na_rep=0, inf_rep=0)

print(df1)

2.去除季節(jié)年度進(jìn)行聚類

#去除年度和季節(jié)進(jìn)行聚類

df2 = pd.read_excel(filePath2, sheet_name='單款排名')

df2.pop('年度名稱')

df2.pop('季節(jié)名稱')

index_list = ['部門名稱', '商品代碼', '商品名稱', '品牌名稱', '品類名稱', '顏色名稱']

value_list = ['0M','1L','1XL','27','28','29','2XL','30','3XL','4XL','5XL','6XL','S','均','合計(jì)']

#使用透視表聚合

df2 = df2.pivot_table(index= index_list,values=value_list,aggfunc='sum')

# 重置索引,防止單元格合并

df2 = df2.reset_index()

#將合計(jì)列放到最后面

#dataframe中某一列放到最后,并改名為銷售明細(xì)

df2['銷售明細(xì)'] = df2.pop('合計(jì)')

df2.to_excel(filePath2, sheet_name="單款排名", index=False, na_rep=0, inf_rep=0)

3完整數(shù)據(jù)處理過程代碼

from openpyxl import load_workbook

import pandas as pd

def print_hi(name):

# Use a breakpoint in the code line below to debug your script.

print(f'Hi, {name}') # Press Ctrl+F8 to toggle the breakpoint.

# Press the green button in the gutter to run the script.

if __name__ == '__main__':

filePath1 = './src/原始數(shù)據(jù)精修.xlsx'

# 加載工作簿

wb = load_workbook(filePath1)

# 獲取sheet頁,修改第一個(gè)sheet頁面為

name1 = wb.sheetnames[0]

ws1 = wb[name1]

ws1.title = "銷售明細(xì)"

wb.save(filePath1)

#銷售明細(xì)

df1 = pd.read_excel(filePath1, sheet_name='銷售明細(xì)')

index_list = ['部門名稱', '年度名稱', '季節(jié)名稱', '商品代碼', '商品名稱', '品牌名稱', '品類名稱', '顏色名稱']

# 求和方法二,需將文本的列指定為索引

df1 = df1.set_index(index_list)

df1['合計(jì)'] = df1.apply(lambda x: x.sum(), axis=1)

filePath2 = './src/處理結(jié)果精修.xlsx'

#重置索引,防止單元格合并

df1 = df1.reset_index()

df1.to_excel(filePath2, sheet_name="new_sheet", index=False, na_rep=0, inf_rep=0)

#單款排名

#去除年度和季節(jié)進(jìn)行聚類

df2 = df1.copy()

df2.pop('年度名稱')

df2.pop('季節(jié)名稱')

index_list = ['部門名稱', '商品代碼', '商品名稱', '品牌名稱', '品類名稱', '顏色名稱']

value_list = ['0M','1L','1XL','27','28','29','2XL','30','3XL','4XL','5XL','6XL','S','均','合計(jì)']

#使用透視表聚合

df2 = df2.pivot_table(index= index_list,values=value_list,aggfunc='sum')

# 重置索引,防止單元格合并

df2 = df2.reset_index()

#將合計(jì)列放到最后面

#dataframe中某一列放到最后,并改名為銷售明細(xì)

df2['銷售明細(xì)'] = df2.pop('合計(jì)')

df2.sort_values(by="銷售明細(xì)", axis=0, ascending=False, inplace=True)

#品牌排名

df3 = df1.copy()

# 使用透視表聚合

df3 = df3.pivot_table(index='品牌名稱', values='合計(jì)', aggfunc='sum')

# 重置索引,防止單元格合并

df3 = df3.reset_index()

# 將合計(jì)列放到最后面

# dataframe中某一列放到最后,并改名為銷售明細(xì)

df3['銷售明細(xì)'] = df3.pop('合計(jì)')

df3.sort_values(by="銷售明細(xì)", axis=0, ascending=False, inplace=True)

#年度銷售

df4 = df1.copy()

# 使用透視表聚合

print(df4)

df4 = df4.pivot_table(index=['年度名稱', '季節(jié)名稱'], values='合計(jì)', aggfunc='sum')

# 重置索引,防止單元格合并

df4 = df4.reset_index()

# 將合計(jì)列放到最后面

# dataframe中某一列放到最后,并改名為銷售明細(xì)

df4['銷售明細(xì)'] = df4.pop('合計(jì)')

df4.sort_values(by="銷售明細(xì)", axis=0, ascending=False, inplace=True)

#季節(jié)銷售

df5 = df1.copy()

#使用透視表聚合

df5 = df5.pivot_table(index=['季節(jié)名稱'], values='合計(jì)', aggfunc='sum')

# 重置索引,防止單元格合并

df5 = df5.reset_index()

df5['銷售明細(xì)'] = df5.pop('合計(jì)')

df5.sort_values(by="銷售明細(xì)", axis=0, ascending=False, inplace=True)

#品類排名

df6 = df1.copy()

# 使用透視表聚合

df6 = df6.pivot_table(index=['品類名稱'], values='合計(jì)', aggfunc='sum')

# 重置索引,防止單元格合并

df6 = df6.reset_index()

df6['銷售明細(xì)'] = df6.pop('合計(jì)')

df6.sort_values(by="銷售明細(xì)", axis=0, ascending=False, inplace=True)

# print(df1)

# 加載工作簿

filePath2 = './src/處理結(jié)果精修.xlsx'

wb = load_workbook(filePath2)

#客戶周銷

df7 = pd.DataFrame({'商店名稱':[], '銷售數(shù)量':[]})

#創(chuàng)建表

ws2 = wb.create_sheet("單款排名")

ws3 = wb.create_sheet("品牌排名")

ws4 = wb.create_sheet("年度銷售")

ws5 = wb.create_sheet("季節(jié)銷售")

ws6 = wb.create_sheet("品類排名")

ws7 = wb.create_sheet("客戶周銷")

wb.save(filePath2)

#將生成的工作表導(dǎo)入到程序中

result_sheet = pd.ExcelWriter(filePath2, engine='openpyxl') # 先定義要存入的文件名xxx,然后分別存入xxx下不同的sheet

df1.to_excel(result_sheet, "銷售明細(xì)", index=False, na_rep=0, inf_rep=0)

df2.to_excel(result_sheet, "單款排名", index=False, na_rep=0, inf_rep=0)

df3.to_excel(result_sheet, "品牌排名", index=False, na_rep=0, inf_rep=0)

df4.to_excel(result_sheet, "年度銷售", index=False, na_rep=0, inf_rep=0)

df5.to_excel(result_sheet, "季節(jié)銷售", index=False, na_rep=0, inf_rep=0)

df6.to_excel(result_sheet, "品類排名", index=False, na_rep=0, inf_rep=0)

df7.to_excel(result_sheet, "客戶周銷", index=False, na_rep=0, inf_rep=0)

# 這步不能省,否則不生成文件

result_sheet._save()

初始文件格式

最終結(jié)果,處理完成

求行和和求列合

#銷售明細(xì)

df1 = pd.read_excel(filePath1, sheet_name='銷售明細(xì)')

index_list = ['部門名稱', '年度名稱', '季節(jié)名稱', '商品代碼', '商品名稱', '品牌名稱', '品類名稱', '顏色名稱']

# 求和方法二,需將文本的列指定為索引

df1 = df1.set_index(index_list)

#df1.loc["按列求和"] = df1.apply(lambda x: x.sum())

df1['合計(jì)'] = df1.apply(lambda x: x.sum(), axis=1)

#求列合

df1 = df1.reset_index()

df1 = df1.set_index('部門名稱')

df1.loc['合計(jì)'] = df1.apply(lambda x: x.sum(), axis=0)

#重置索引,防止單元格合并

df1 = df1.reset_index()

df1.to_excel("new_sheet1.xlsx", sheet_name="new_sheet", index=False, na_rep=0, inf_rep=0)

4格式處理

通過openpyxl進(jìn)行格式處理

#銷售明細(xì)

# 加載工作簿

wb1 = load_workbook('Mytest.xlsx')

# 獲取sheet頁

ws2 = wb1['銷售明細(xì)']

#獲取行

for cell in ws1['1']:

#代碼省略

#獲取列

for cell in ws1['A']:

#代碼省略

字體示例

from openpyxl import Workbook

from openpyxl.styles import Font

# 創(chuàng)建一個(gè)新的工作簿和工作表

workbook = Workbook()

sheet = workbook.active

# 創(chuàng)建一個(gè)字體對(duì)象并設(shè)置屬性

font = Font(

name='Arial', # 字體名稱

size=12, # 字體大小

bold=True, # 是否加粗

italic=True, # 是否斜體

underline='single', # 下劃線類型:single、double、none等

strike=True, # 是否有刪除線

color='FF0000' # 字體顏色,十六進(jìn)制RGB值

)

# 在單元格A1中應(yīng)用字體樣式

sheet['A1'].font = font

sheet['A1'].value = 'Hello, World!'

# 保存工作簿

workbook.save('E:\\UserData\\Desktop\\font_example.xlsx')

背景邊框示例

# 銷售明細(xì)

# 加載工作簿

wb1 = load_workbook(filePath2)

# 獲取sheet頁

ws1 = wb1['銷售明細(xì)']

#設(shè)置字體

# 創(chuàng)建一個(gè)字體對(duì)象并設(shè)置屬性

font = Font(

name='微軟雅黑', # 字體名稱

size=18, # 字體大小

bold=True, # 是否加粗

italic=False, # 是否斜體

underline='none', # 下劃線類型:single、double、none等

strike=False, # 是否有刪除線

color='000000', # 字體顏色,十六進(jìn)制RGB值

vertAlign='baseline'

)

dept_name = ws1['A2'].value

ws1.insert_rows(0, 1) #插入一行

min_row = ws1.min_row

max_row = ws1.max_row

min_col = ws1.min_column

max_col = ws1.max_column

#設(shè)置單元格格式

# 調(diào)整行高

ws1.row_dimensions[1].height = 24

#合并單元格

# 需要合并的左上方和右下方單元格坐標(biāo)

ws1.merge_cells(start_row=1, start_column=1, end_row=1, end_column=max_col)

# 在單元格A1中應(yīng)用字體樣式

ws1['A1'].font = font

ws1['A1'].value = dept_name + '銷售明細(xì)'

#設(shè)置字體居中

# 設(shè)置字體居中

#要導(dǎo)入 from openpyxl import styles

cell = ws1['A1']

cell.alignment = styles.Alignment(horizontal='center', vertical='center')

#首行設(shè)置底色

# 設(shè)置第一行單元格的背景顏色為紅色

#from openpyxl.styles import PatternFill

for cell in ws[1]:

cell.fill = PatternFill(start_color="FF0000", end_color="FF0000", fill_type="solid")

# 保存工作簿

wb1.save(filePath2)

將數(shù)字轉(zhuǎn)換為excel的列序號(hào)

import string

def number_to_column(n):

"""Convert a number to the corresponding column letter in Excel"""

column = ""

while n > 0:

n -= 1

column = string.ascii_uppercase[n % 26] + column

n //= 26

return column

# Example usage

print(number_to_column(1)) # Output: "A"

print(number_to_column(27)) # Output: "AA"

print(number_to_column(28)) # Output: "AB"

print(number_to_column(53)) # Output: "BA"

print(number_to_column(1000)) # Output: "ALL"

設(shè)置銷售明細(xì)的代碼

# 銷售明細(xì)

# 加載工作簿

wb1 = load_workbook(filePath2)

# 獲取sheet頁

ws1 = wb1['銷售明細(xì)']

# 設(shè)置字體

# 創(chuàng)建一個(gè)字體對(duì)象并設(shè)置屬性

font1 = Font(

name='微軟雅黑', # 字體名稱

size=18, # 字體大小

bold=True, # 是否加粗

italic=False, # 是否斜體

underline='none', # 下劃線類型:single、double、none等

strike=False, # 是否有刪除線

color='000000', # 字體顏色,十六進(jìn)制RGB值

vertAlign='baseline'

)

dept_name = ws1['A2'].value

ws1.insert_rows(0, 1) # 插入一行

min_row = ws1.min_row

max_row = ws1.max_row

min_col = ws1.min_column

max_col = ws1.max_column

# 設(shè)置單元格格式

# 調(diào)整行高

ws1.row_dimensions[1].height = 24

# 合并單元格

# 需要合并的左上方和右下方單元格坐標(biāo)

ws1.merge_cells(start_row=1, start_column=1, end_row=1, end_column=max_col)

# 在單元格A1中應(yīng)用字體樣式

ws1['A1'].font = font1

ws1['A1'].value = dept_name + '銷售明細(xì)'

# 設(shè)置字體居中

cell = ws1['A1']

cell.alignment = styles.Alignment(horizontal='center', vertical='center')

# 首行設(shè)置底色

# 設(shè)置第一行單元格的背景顏色為黃色

for cell in ws1[2]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

#列顏色填充

for cell in ws1[number_to_column(max_col)]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

#設(shè)置邊框

cell.border = Border(left=Side(style='thin'), bottom=Side(style='thin'), right=Side(style='thin'), top=Side(style='thin'))

#處理最后一行

# 調(diào)整行高

ws1.row_dimensions[max_row].height = 24

# 設(shè)置末尾行單元格的背景顏色為黃色

for cell in ws1[max_row]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

# 設(shè)置邊框

cell.border = Border(left=Side(style='thin'), bottom=Side(style='thin'), right=Side(style='thin'),top=Side(style='thin'))

# 合并單元格

# 需要合并的左上方和右下方單元格坐標(biāo)

ws1.merge_cells(start_row=max_row, start_column=1, end_row=max_row, end_column=8)

# 在單元格A1中應(yīng)用字體樣式

cell = ws1.cell(column=1, row=max_row)

cell.alignment = styles.Alignment(horizontal='center', vertical='center')

cell.font = font1

cell.value = '合計(jì)'

單款排名格式

#單款排名

# 獲取sheet頁

ws2 = wb1['單款排名']

# 設(shè)置字體

# 創(chuàng)建一個(gè)字體對(duì)象并設(shè)置屬性

dept_name = ws2['A2'].value

ws2.insert_rows(0, 1) # 插入一行

min_row = ws2.min_row

max_row = ws2.max_row

min_col = ws2.min_column

max_col = ws2.max_column

# 設(shè)置單元格格式

# 調(diào)整行高

ws2.row_dimensions[1].height = 24

# 合并單元格

# 需要合并的左上方和右下方單元格坐標(biāo)

ws2.merge_cells(start_row=1, start_column=1, end_row=1, end_column=max_col)

# 在單元格A1中應(yīng)用字體樣式

ws2['A1'].font = font1

ws2['A1'].value = '單款排名'

# 設(shè)置字體居中

cell = ws2['A1']

cell.alignment = styles.Alignment(horizontal='center', vertical='center')

# 首行設(shè)置底色

# 設(shè)置第一行單元格的背景顏色為黃色

for cell in ws2[2]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

# 列顏色填充

for cell in ws2[number_to_column(max_col)]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

# 設(shè)置邊框

cell.border = Border(left=Side(style='thin'), bottom=Side(style='thin'), right=Side(style='thin'),

top=Side(style='thin'))

# 處理最后一行

# 調(diào)整行高

ws2.row_dimensions[max_row ].height = 24

# 設(shè)置末尾行單元格的背景顏色為黃色

for cell in ws2[max_row ]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

# 設(shè)置邊框

cell.border = Border(left=Side(style='thin'), bottom=Side(style='thin'), right=Side(style='thin'),

top=Side(style='thin'))

# 合并單元格

# 需要合并的左上方和右下方單元格坐標(biāo)

ws2.merge_cells(start_row=max_row, start_column=1, end_row=max_row , end_column=6)

# 在單元格A1中應(yīng)用字體樣式

cell = ws2.cell(column=1, row=max_row)

cell.alignment = styles.Alignment(horizontal='center', vertical='center')

cell.font = font1

cell.value = '合計(jì)'

完整代碼

from openpyxl import load_workbook

from openpyxl import styles

from openpyxl.styles import *

import pandas as pd

from openpyxl.styles import Font

import string

def print_hi(name):

# Use a breakpoint in the code line below to debug your script.

print(f'Hi, {name}') # Press Ctrl+F8 to toggle the breakpoint.

def number_to_column(n):

"""Convert a number to the corresponding column letter in Excel"""

column = ""

while n > 0:

n -= 1

column = string.ascii_uppercase[n % 26] + column

n //= 26

return column

# Press the green button in the gutter to run the script.

if __name__ == '__main__':

filePath1 = './src/原始數(shù)據(jù)精修.xlsx'

# 加載工作簿

wb = load_workbook(filePath1)

# 獲取sheet頁,修改第一個(gè)sheet頁面為

name1 = wb.sheetnames[0]

ws1 = wb[name1]

ws1.title = "銷售明細(xì)"

wb.save(filePath1)

#銷售明細(xì)

df0 = pd.read_excel(filePath1, sheet_name='銷售明細(xì)')

index_list = ['部門名稱', '年度名稱', '季節(jié)名稱', '商品代碼', '商品名稱', '品牌名稱', '品類名稱', '顏色名稱']

# 求和方法二,需將文本的列指定為索引

df0 = df0.set_index(index_list)

#df1.loc["按列求和"] = df1.apply(lambda x: x.sum())

df0['合計(jì)'] = df0.apply(lambda x: x.sum(), axis=1)

#df1=df1.sum()

filePath2 = './src/處理結(jié)果精修.xlsx'

#重置索引,防止單元格合并

df0 = df0.reset_index()

df1 = df0.copy()

# 列求和

df1 = df1.set_index('部門名稱')

df1.loc['合計(jì)'] = df1.apply(lambda x: x.sum(), axis=0)

# df1=df1.sum()

filePath2 = './src/處理結(jié)果精修.xlsx'

# 重置索引,防止單元格合并

df1 = df1.reset_index()

df1.to_excel("new_sheet1.xlsx", sheet_name="new_sheet", index=False, na_rep=0, inf_rep=0)

#單款排名

#去除年度和季節(jié)進(jìn)行聚類

df2 = df0.copy()

df2.pop('年度名稱')

df2.pop('季節(jié)名稱')

index_list = ['部門名稱', '商品代碼', '商品名稱', '品牌名稱', '品類名稱', '顏色名稱']

value_list = ['0M','1L','1XL','27','28','29','2XL','30','3XL','4XL','5XL','6XL','S','均','合計(jì)']

#使用透視表聚合

df2 = df2.pivot_table(index= index_list,values=value_list,aggfunc='sum')

# 重置索引,防止單元格合并

df2 = df2.reset_index()

#將合計(jì)列放到最后面

#dataframe中某一列放到最后,并改名為銷售明細(xì)

df2['銷售明細(xì)'] = df2.pop('合計(jì)')

df2.sort_values(by="銷售明細(xì)", axis=0, ascending=False, inplace=True)

#列求和

df2 = df2.set_index('部門名稱')

df2.loc['合計(jì)'] = df1.apply(lambda x: x.sum(), axis=0)

# 重置索引,防止索引列消失

df2 = df2.reset_index()

#品牌排名

df3 = df0.copy()

# 使用透視表聚合

df3 = df3.pivot_table(index='品牌名稱', values='合計(jì)', aggfunc='sum')

# 重置索引,防止單元格合并

df3 = df3.reset_index()

# 將合計(jì)列放到最后面

# dataframe中某一列放到最后,并改名為銷售明細(xì)

df3['銷售明細(xì)'] = df3.pop('合計(jì)')

df3.sort_values(by="銷售明細(xì)", axis=0, ascending=False, inplace=True)

df3 = df3.set_index('品牌名稱')

df3.loc['合計(jì)'] = df3.apply(lambda x: x.sum(), axis=0)

# 重置索引,防止單元格合并

df3 = df3.reset_index()

#年度銷售

df4 = df0.copy()

# 使用透視表聚合

print(df4)

df4 = df4.pivot_table(index=['年度名稱', '季節(jié)名稱'], values='合計(jì)', aggfunc='sum')

# 重置索引,防止單元格合并

df4 = df4.reset_index()

# 將合計(jì)列放到最后面

# dataframe中某一列放到最后,并改名為銷售明細(xì)

df4['銷售明細(xì)'] = df4.pop('合計(jì)')

df4.sort_values(by="銷售明細(xì)", axis=0, ascending=False, inplace=True)

df4 = df4.set_index('年度名稱')

df4.loc['合計(jì)'] = df4.apply(lambda x: x.sum(), axis=0)

# 重置索引,防止單元格合并

df4 = df4.reset_index()

#季節(jié)銷售

df5 = df0.copy()

#使用透視表聚合

df5 = df5.pivot_table(index=['季節(jié)名稱'], values='合計(jì)', aggfunc='sum')

# 重置索引,防止單元格合并

df5 = df5.reset_index()

df5['銷售明細(xì)'] = df5.pop('合計(jì)')

df5.sort_values(by="銷售明細(xì)", axis=0, ascending=False, inplace=True)

df5 = df5.set_index('季節(jié)名稱')

df5.loc['合計(jì)'] = df5.apply(lambda x: x.sum(), axis=0)

# 重置索引,防止單元格合并

df5 = df5.reset_index()

#品類排名

df6 = df0.copy()

# 使用透視表聚合

df6 = df6.pivot_table(index=['品類名稱'], values='合計(jì)', aggfunc='sum')

# 重置索引,防止單元格合并

df6 = df6.reset_index()

df6['銷售明細(xì)'] = df6.pop('合計(jì)')

df6.sort_values(by="銷售明細(xì)", axis=0, ascending=False, inplace=True)

df6 = df6.set_index('品類名稱')

df6.loc['合計(jì)'] = df6.apply(lambda x: x.sum(), axis=0)

# 重置索引,防止單元格合并

df6 = df6.reset_index()

# print(df1)

# 加載工作簿

filePath2 = './src/處理結(jié)果精修.xlsx'

wb = load_workbook(filePath2)

#客戶周銷

df7 = pd.DataFrame({'商店名稱':[], '銷售數(shù)量':[]})

#創(chuàng)建表

ws2 = wb.create_sheet("單款排名")

ws3 = wb.create_sheet("品牌排名")

ws4 = wb.create_sheet("年度銷售")

ws5 = wb.create_sheet("季節(jié)銷售")

ws6 = wb.create_sheet("品類排名")

ws7 = wb.create_sheet("客戶周銷")

wb.save(filePath2)

#將生成的工作表導(dǎo)入到程序中

result_sheet = pd.ExcelWriter(filePath2, engine='openpyxl') # 先定義要存入的文件名xxx,然后分別存入xxx下不同的sheet

df1.to_excel(result_sheet, "銷售明細(xì)", index=False, na_rep=0, inf_rep=0)

df2.to_excel(result_sheet, "單款排名", index=False, na_rep=0, inf_rep=0)

df3.to_excel(result_sheet, "品牌排名", index=False, na_rep=0, inf_rep=0)

df4.to_excel(result_sheet, "年度銷售", index=False, na_rep=0, inf_rep=0)

df5.to_excel(result_sheet, "季節(jié)銷售", index=False, na_rep=0, inf_rep=0)

df6.to_excel(result_sheet, "品類排名", index=False, na_rep=0, inf_rep=0)

df7.to_excel(result_sheet, "客戶周銷", index=False, na_rep=0, inf_rep=0)

# 這步不能省,否則不生成文件

result_sheet._save()

# 銷售明細(xì)

# 加載工作簿

wb1 = load_workbook(filePath2)

# 獲取sheet頁

ws1 = wb1['銷售明細(xì)']

# 設(shè)置字體

# 創(chuàng)建一個(gè)字體對(duì)象并設(shè)置屬性

font1 = Font(

name='微軟雅黑', # 字體名稱

size=18, # 字體大小

bold=True, # 是否加粗

italic=False, # 是否斜體

underline='none', # 下劃線類型:single、double、none等

strike=False, # 是否有刪除線

color='000000', # 字體顏色,十六進(jìn)制RGB值

vertAlign='baseline'

)

dept_name = ws1['A2'].value

ws1.insert_rows(0, 1) # 插入一行

min_row = ws1.min_row

max_row = ws1.max_row

min_col = ws1.min_column

max_col = ws1.max_column

# 設(shè)置單元格格式

# 調(diào)整行高

ws1.row_dimensions[1].height = 24

# 合并單元格

# 需要合并的左上方和右下方單元格坐標(biāo)

ws1.merge_cells(start_row=1, start_column=1, end_row=1, end_column=max_col)

# 在單元格A1中應(yīng)用字體樣式

ws1['A1'].font = font1

ws1['A1'].value = dept_name + '銷售明細(xì)'

# 設(shè)置字體居中

cell = ws1['A1']

cell.alignment = styles.Alignment(horizontal='center', vertical='center')

# 首行設(shè)置底色

# 設(shè)置第一行單元格的背景顏色為黃色

for cell in ws1[2]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

#列顏色填充

for cell in ws1[number_to_column(max_col)]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

#設(shè)置邊框

cell.border = Border(left=Side(style='thin'), bottom=Side(style='thin'), right=Side(style='thin'), top=Side(style='thin'))

#處理最后一行

# 調(diào)整行高

ws1.row_dimensions[max_row].height = 24

# 設(shè)置末尾行單元格的背景顏色為黃色

for cell in ws1[max_row]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

# 設(shè)置邊框

cell.border = Border(left=Side(style='thin'), bottom=Side(style='thin'), right=Side(style='thin'),top=Side(style='thin'))

# 合并單元格

# 需要合并的左上方和右下方單元格坐標(biāo)

ws1.merge_cells(start_row=max_row, start_column=1, end_row=max_row, end_column=8)

# 在單元格A1中應(yīng)用字體樣式

cell = ws1.cell(column=1, row=max_row)

cell.alignment = styles.Alignment(horizontal='center', vertical='center')

cell.font = font1

cell.value = '合計(jì)'

#單款排名

# 獲取sheet頁

ws2 = wb1['單款排名']

# 設(shè)置字體

# 創(chuàng)建一個(gè)字體對(duì)象并設(shè)置屬性

dept_name = ws2['A2'].value

ws2.insert_rows(0, 1) # 插入一行

min_row = ws2.min_row

max_row = ws2.max_row

min_col = ws2.min_column

max_col = ws2.max_column

# 設(shè)置單元格格式

# 調(diào)整行高

ws2.row_dimensions[1].height = 24

# 合并單元格

# 需要合并的左上方和右下方單元格坐標(biāo)

ws2.merge_cells(start_row=1, start_column=1, end_row=1, end_column=max_col)

# 在單元格A1中應(yīng)用字體樣式

ws2['A1'].font = font1

ws2['A1'].value = '單款排名'

# 設(shè)置字體居中

cell = ws2['A1']

cell.alignment = styles.Alignment(horizontal='center', vertical='center')

# 首行設(shè)置底色

# 設(shè)置第一行單元格的背景顏色為黃色

for cell in ws2[2]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

# 列顏色填充

for cell in ws2[number_to_column(max_col)]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

# 設(shè)置邊框

cell.border = Border(left=Side(style='thin'), bottom=Side(style='thin'), right=Side(style='thin'),

top=Side(style='thin'))

# 處理最后一行

# 調(diào)整行高

ws2.row_dimensions[max_row ].height = 24

# 設(shè)置末尾行單元格的背景顏色為黃色

for cell in ws2[max_row ]:

cell.fill = PatternFill(start_color="FFFF00", end_color="FF0000", fill_type="solid")

# 設(shè)置邊框

cell.border = Border(left=Side(style='thin'), bottom=Side(style='thin'), right=Side(style='thin'),

top=Side(style='thin'))

# 合并單元格

# 需要合并的左上方和右下方單元格坐標(biāo)

ws2.merge_cells(start_row=max_row, start_column=1, end_row=max_row , end_column=6)

# 在單元格A1中應(yīng)用字體樣式

cell = ws2.cell(column=1, row=max_row)

cell.alignment = styles.Alignment(horizontal='center', vertical='center')

cell.font = font1

cell.value = '合計(jì)'

# 保存工作簿

wb1.save(filePath2)

柚子快報(bào)邀請(qǐng)碼778899分享:貨物數(shù)據(jù)處理pandas版

http://yzkb.51969.com/

相關(guān)鏈接

評(píng)論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場。

轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19511108.html

發(fā)布評(píng)論

您暫未設(shè)置收款碼

請(qǐng)?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問

文章目錄