亞寵展、全球?qū)櫸锂a(chǎn)業(yè)風(fēng)向標(biāo)——亞洲寵物展覽會(huì)深度解析
634
2023-01-24
本文目錄一覽:
如果你問(wèn)的是帶公式的利潤(rùn)表和資產(chǎn)負(fù)債表,是財(cái)務(wù)軟件。只要錄入每張憑證,自動(dòng)生成各種報(bào)表,你的單位應(yīng)該就有財(cái)務(wù)軟件。你可以去天空下一個(gè)金簿財(cái)務(wù)軟件3.5,操作很簡(jiǎn)單,可以自動(dòng)生成報(bào)表總明細(xì)賬。
速達(dá)軟件都可以自動(dòng)生成財(cái)務(wù)報(bào)表,系統(tǒng)按企業(yè)所選擇的會(huì)計(jì)制度,為企業(yè)預(yù)設(shè)了一些自定義報(bào)表,如:資產(chǎn)負(fù)債表,利潤(rùn)表金流量表等等,3000系列軟件,在帳務(wù)菜單中可以找到‘自定義報(bào)表,財(cái)務(wù)系列與5000系列,在報(bào)表菜單中找到‘財(cái)務(wù)報(bào)表’財(cái)務(wù)報(bào)表中也有‘自定義報(bào)表’
自定義報(bào)表除了系統(tǒng)提供的一些以外,還可以自已設(shè)計(jì)報(bào)表,用起來(lái)很方便。
Python操作Excel實(shí)現(xiàn)自動(dòng)化報(bào)表
安裝
python?-m?pip?install?xlrd?xlwt?xlutils。
基本用法
1.從指定文件路徑讀取excel表格,進(jìn)行一定操作,然后保存到另一個(gè)excel文件:result.xlsx
import?xlwt
import?xlrd
from?xlutils.copy?import?copy
import?pandas?as?pd
from?pandas?import?DataFrame,Series
import?os
os.chdir('./')
#?從指定文件路徑讀取excel表格
df?=?pd.read_excel('D:/mypaper/data/data.xlsx')
#?查看df內(nèi)容
#?根據(jù)age算出出生年份,增加一列
import?datetime
import?os
year?=?datetime.datetime.now().year#獲取當(dāng)前系統(tǒng)時(shí)間對(duì)應(yīng)的年份
df['birth']?=?year-df['age']
df.to_excel('result.xlsx')#保存到當(dāng)前工作目錄,可以用os.getcwd()查看
#查看下此時(shí)df的內(nèi)容,可以看到已經(jīng)生成了birth這一列。
2.單元格操作
#?定義方法:讀取指定目錄下Excel文件某個(gè)sheet單元格的值
def?excel_read(file_path,table,x,y):
?????data?=?xlrd.open_workbook(file_path)
?????table?=?data.sheet_by_name(table)
?????return?table.cell(y,x).value
#?定義方法:?jiǎn)卧裰导皹邮?br/> write_obj_list?=?[]
def?concat_obj(cols,rows,value):
????write_obj_list.append({'cols':cols,'rows':rows,'value':value,\
'style':xlwt.easyxf('font:?name?宋體,height?280;alignment:?horiz?centre')})
#?定義方法:合并單元格
def?merge_unit(srows,erows,scols,ecols,value):
????write_obj_list.append({'id':'merge','srows':srows,'erows':erows,'scols':scols,\
'ecols':ecols,'value':value,'style':xlwt.easyxf('font:?name?宋體,height?280;alignment:?horiz?centre')})
#?定義方法:更新excel
excel_update(file_path,write_obj_list,new_path):
????old_excel?=?xlrd.open_workbook(file_path,?formatting_info=True)
????#管道作用
????new_excel?=?copy(old_excel)
????'''
????通過(guò)get_sheet()獲取的sheet有write()方法
????'''
????sheet1?=?new_excel.get_sheet(0)
????'''
????1代表是修改第幾個(gè)工作表里,從0開(kāi)始算是第一個(gè)。此處修改第一個(gè)工作表
????'''
????for?item?in?write_obj_list:
????????if?'id'?not?in?item.keys():
????????????if?'style'?in?item.keys():
????????????????sheet1.write(item['rows'],?item['cols'],?item['value'],item['style'])
????????????else:
????????????????sheet1.write(item['rows'],?item['cols'],?item['value'])
????????else:
????????????if?'style'?in?item.keys():
????????????????sheet1.write_merge(item['srows'],item['erows'],item['scols'],?item['ecols'],?item['value'],item['style'])
????????????else:
????????????????sheet1.write_merge(item['srows'],item['erows'],item['scols'],?item['ecols'],?item['value'])
????'''
???如果報(bào)錯(cuò)?dict_items?has?no?attributes?sort
????把syle源碼中--alist.sort()?修改為----?sorted(alist)?
????一共修改2次
????'''
????new_excel.save(file_path)
#參數(shù)詳解
#?srows:合并的起始行數(shù)
#?erows:合并的結(jié)束行數(shù)
#?scols:合并的起始列數(shù)
#?ecols:合并的結(jié)束列數(shù)?
#?value:合并單元格后的填充值
#?style:合并后填充風(fēng)格:
#?????font:?name?宋體
#?????height?280;
#?????alignment:?horiz?centre
#?????...?與excel操作基本保持一致
(注意:該方法僅僅是將需要直行的動(dòng)作保存到一個(gè)list中,真正的動(dòng)作還未執(zhí)行,執(zhí)行動(dòng)作是發(fā)生在excel_update方法中)
最終調(diào)用excel_update方法,傳入每個(gè)單元格需要進(jìn)行的操作和填充值的write_obj_list以及文件保存路徑file_path,就可以在當(dāng)前工作目錄下生成想要的Excel結(jié)果文件。
注意:
1.write_obj_list支持用戶自定義
2.write_obj_list也可以是根據(jù)excel_read方法讀取現(xiàn)有待修改的excel文件(可以維持原有表格的格式)而生成
End
關(guān)于怎么做自動(dòng)化報(bào)表表格和數(shù)據(jù)報(bào)表自動(dòng)化的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。 怎么做自動(dòng)化報(bào)表表格的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于數(shù)據(jù)報(bào)表自動(dòng)化、怎么做自動(dòng)化報(bào)表表格的信息別忘了在本站進(jìn)行查找喔。版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。