INT应用:发票金额拆分

1. 简介

1.1 案例简介

本案例将介绍,如何将金额按照百万、十万、万、千、百、十、元、角、分的格式进行拆分,并填写在子表单中。

1.2 应用场景

财务管理场景中,需要将填报的金额特定格式进行拆分,以便在打印模板内按照下图格式进行打印:

1.3 设计思路

1)子表单中添加一个数字字段用于录入金额数据;

2)在这个数值后面按照顺序添加所需要位数的数字字段;

3)分别对每一个数字字段编写对应函数。

1.4 预期效果

在表单中录入金额后,即可自动将金额拆分,并填写在子表中。点击安装模板

2. 设置步骤

2.1 基础表单配置

新建「发票金额拆分」表单,字段设置如下:

字段名称

字段类型

金额拆分

子表单

录入金额

子字段-数字

百万

子字段-数字

十万

子字段-数字

子字段-数字

子字段-数字

子字段-数字

子字段-数字

子字段-数字

子字段-数字

子字段-数字

2.2 设置公式

1)选中百万」字段,在「字段属性 >> 默认值」处,设置默认值为「公式编辑」,点击下方「编辑公式」:

2)在公式编辑页面,设置「金额拆分.百万」字段的公式为:IF(INT(金额拆分.录入金额/1000000)>0,INT(金额拆分.录入金额/1000000),0)

设置好记得点击「确定」保存。

3)按照同样的方法,设置其他字段的公式如下:

  • 十万:

IF(INT((金额拆分.录入金额-金额拆分.百万*100000)/100000)>0,INT((金额拆分.录入金额-金额拆分.百万*1000000)/100000),0)

  • 万:

IF(INT((金额拆分.录入金额-金额拆分.百万*1000000-金额拆分.十万*100000)/10000)>0,INT((金额拆分.录入金额-金额拆分.百万*1000000-金额拆分.十万*100000)/10000),0)

  • 千:

IF(INT((金额拆分.录入金额-金额拆分.百万*1000000-金额拆分.十万*100000-金额拆分.万*10000)/1000)>0,INT((金额拆分.录入金额-金额拆分.百万*1000000-金额拆分.十万*100000-金额拆分.万*10000)/1000),0)

  • 百:

IF(INT((金额拆分.录入金额-金额拆分.百万*1000000-金额拆分.十万*100000-金额拆分.万*10000-金额拆分.千*1000)/100)>0,INT((金额拆分.录入金额-金额拆分.百万*1000000-金额拆分.十万*100000-金额拆分.万*10000-金额拆分.千*1000)/100),0)

  • 十:

IF(INT((金额拆分.录入金额-金额拆分.百万*1000000-金额拆分.十万*100000-金额拆分.万*10000-金额拆分.千*1000-百*100)/10)>0,INT((金额拆分.录入金额-金额拆分.百万*1000000-金额拆分.十万*100000-金额拆分.万*10000-金额拆分.千*1000-金额拆分.百*100)/10),0)

  • 元:

IF(INT((金额拆分.录入金额-金额拆分.百万*1000000-金额拆分.十万*100000-金额拆分.万*10000-金额拆分.千*1000-金额拆分.百*100-金额拆分.十*10)/1)>0,INT((金额拆分.录入金额-金额拆分.百万*1000000-金额拆分.十万*100000-金额拆分.万*10000-金额拆分.千*1000-金额拆分.百*100-金额拆分.十*10)/1),0)

  • 角:

IF(SEARCH(".",TEXT(金额拆分.录入金额))==0,0,LEFT(TEXT(SPLIT(TEXT(金额拆分.录入金额),".")[1]),1))

  • 分:

IF(ISEMPTY(MID(TEXT(SPLIT(TEXT(金额拆分.录入金额),'.')[1]),2,1))==1,0,MID(TEXT(SPLIT(TEXT(金额拆分.录入金额),'.')[1]),2,1))

2.3 效果演示

效果演示参见本文【1.4 预期效果】。

Copyright(C)2023 HFBangFu Inc. All Rights Reserved 皖ICP备12017563号-5