今天要跟大家演示的是合同管理台账自动生成编码的过程。 某公司有总部和若干个事业所(也可以是按部门管理),编码希望设置为“CT+事业所+合同类别+年份2位+流水号4位”的样式。 考虑到可能是年度中间开始使用该管理表,按合同类别之前已有一些合同,所以编号可能要从已有号码往后继续往下编。
一、生成合同流水号 =IF(G5="","",TEXT(COUNTIF($G$5: $G5,G5)+VLOOKUP(G5,$K$5: $M$9,3,0),"0000")) 函数说明 1、if 函数表达式:=if(logical_test,value_if_true,value_if_false) 用途:如果合同类别没有填时返回空值,有填写合同类别,用函数组合计算流水号。 2、countif 函数表达式:=countif(range,criteria) 用途:统计所选区域中符合条件的值的个数 3、vlookup 函数表达式:=vlookup(lookup_value,table_array,col_index_num,range_lookup) 用途:从指定范围里,如果该范围第一列存在要找的值,再从该范围指定列取值。 4、公式嵌套说明 统计本表合同类别的个数,如果只中途编号,需要考虑之前各类合同已有合同数, 在K4:M8区域管理合同类别已有合同数。 如资产采购已有15个合同,台账动态统计G5为第一份资产采购合同,所以编号16 由于编号需要统一为4位流水号,所以用了text函数,将其规范为4位长。 如果属于本年度年初开始启用,将已有合同数全部维护为0即可。
二、生成合同编号 =IF(A5="","","CT"&F5&G5&RIGHT(A5,2)&H5) 函数说明 1、right 函数表达式:=right(text,num_chars) 用途:截取文本右边指定长度的字符 2、公式嵌套说明 如果A5为空则显示空值,如果非空,用规则为“CT+事业所+合同类别+年+流水号”,长度 分别为:2+1+1+2+5。
三、自动对表格画框 目的 添加新的合同信息如果能自动画框,会减少一些美化的操作,要求实现:填年份则整行画框。 设置 选定A5:I303,条件格式-使用公式确定要设置的单元格-输入公式=$A5<>"",点“格式”:
切换到“边框”,设定外边框,点确定完成设置:
通过上述设置,我们一份智能编合同号而且自动画框线的合同管理台账就做好了。是不是比每次编号时要找同类合同已有流水号要方便了许多? 通过公式嵌套来实现自动编号,一方面时效率大大提高,另一方面减少了出错的可能。 |