python帮助客户整理凭证号和凭证分录
我是技术男,不喜欢拐弯抹角,今天遇到客户导入凭证数据时需要整理凭证号和凭证分录,有几千张凭证,分录也有上万条了吧,原账套数据导出后没有分录行号,需要根据凭证号的不同来生成凭证分录行号。
需求:
1、原Excel表数据:(文件名:Book1.xlsx)
凭证号 | 分录行号 | 日期 | 借贷方 | 摘要 | 金额 | 制单人 |
1 | 0 | |||||
1 | 0 | |||||
1 | 0 | |||||
1 | 0 | |||||
2 | 0 | |||||
2 | 0 | |||||
2 | 0 | |||||
2 | 0 | |||||
2 | 0 |
2、实现的目标数据:(文件名:aaa.xlsx)
凭证号 | 分录行号 | 日期 | 借贷方 | 摘要 | 金额 | 制单人 |
1 | 1 | |||||
1 | 2 | |||||
1 | 3 | |||||
1 | 4 | |||||
2 | 1 | |||||
2 | 2 | |||||
2 | 3 | |||||
2 | 4 | |||||
2 | 5 |
5分钟,16行代码解决问题。下面就把python的代码发上:
import pandas as pd
xls = pd.read_excel('Book1.xlsx')
tmp=0
cnt =0
for row in xls.values:
if tmp != row[0]:
tmp = row[0]
cnt = 0
cnt += 1
row[1] = cnt
else:
cnt += 1
row[1] = cnt
xls.to_excel("aaa.xlsx", index=False)
日期 | 凭证字 | 凭证号 | 分录序号 | 摘要 | 科目代码 | 科目名称 | 借方金额 | 贷方金额 |
2019-1-1 | 记 | 1 | 1 | 1221013 | 11,400.00 | |||
2019-1-1 | 记 | 1 | 2 | 1002000 | 11,400.00 | |||
2019-1-1 | 记 | 1 | 1 | 11,400.00 | ||||
2019-1-1 | 记 | 1 | 2 | 11,400.00 | ||||
2019-1-1 | 记 | 2 | 1 | 20,000.00 | ||||
2019-1-1 | 记 | 2 | 2 | 20,000.00 | ||||
2019-1-1 | 记 | 3 | 1 | 68,642.00 | ||||
2019-1-1 | 记 | 3 | 2 | 68,642.00 | ||||
2019-1-1 | 记 | 4 | 1 | 83,700.00 | ||||
2019-1-1 | 记 | 4 | 83,700.00 | |||||
2019-1-1 | 记 | 5 | 32,000.00 | |||||
2019-1-1 | 记 | 5 | 32,000.00 | |||||
2019-1-1 | 记 | 6 | 24,000.00 | |||||
2019-1-1 | 记 | 6 | 24,000.00 | |||||
2019-1-1 | 记 | 7 | 19,500.00 | |||||
2019-1-1 | 记 | 7 | 19,500.00 | |||||
2019-1-1 | 记 | 8 | 45,089.29 | |||||
2019-1-1 | 记 | 8 | 45,089.29 |