Skip to content

在Excel中添加N个实用公式

这一组功能是不坑盒子在Excel中添加的公式,弥补原来公式的不足。

不坑盒子在Excel中拓展公式集合

使用前提

拓展公式的实现是依靠插件目录下的BKOfficeDNA-AddIn-packed.xll文件,请确保这个文件不被杀毒软件删除、隔离。

不坑盒子xll文件

基本使用方法

不坑盒子拓展的公式和Excel自带的公式使用方法相同,可以在单元格之间拖选、复制、多层套用。所有的公式都可以用这两个方法来使用:

  1. 点击功能区的公式按钮,将弹出公式设置面板,在里面进行选择、填写。 可视化使用公式

  2. 在单元格中直接输入“=公式名(参数)”。

BK_ID_AGE

作用:从身份证中提取年龄,可以精准计算到“日”。

=BK_ID_AGE(身份证号[,8位数日期])

身份证号:必填,可以输入单元格地址,也可以手动输入身份证号

8位数日期:选填,生日精确到哪一天,如果不填写,则只能精确到当前年份

返回值:数字

如:

=BK_ID_AGE(500225199109010000) = 33

=BK_ID_AGE(500225199109010000,20240831) = 32

上面公式,经常用于判断一年级小学生是否在9月1日前满6周岁。

BK_ID_GENDER

作用:从身份证中提取性别。

=BK_ID_GENDER(身份证号)

身份证号:必填,可以输入单元格地址,也可以手动输入身份证号

返回值:男|女

如:

=BK_ID_GENDER(500000199101259020) = 女

BK_ID_CHECK

作用:判断身份证是否正确。

=BK_ID_CHECK(身份证号)

身份证号:必填,可以输入单元格地址,也可以手动输入身份证号

返回值:True|False

如:

=BK_ID_CHECK(500000199101259020) = False

BK_RMB

作用:将数字转换成人民币汉字。

=BK_RMB(数字)

数字:必填,可以输入单元格地址,也可以手动输入数字

返回值:汉字

如:

=BK_RMB(1256.5) = 壹仟贰佰伍拾陆元伍角

BK_RAND_NAME

作用:生成随机姓名。

=BK_RAND_NAME

返回值:中文字符串

如:

=BK_RAND_NAME() = 朱天赐

BK_RAND_IDCARD

作用:生成随机身份证号。

=BK_RAND_IDCARD

返回值:18位数字组成的字符串

如:

=BK_RAND_IDCARD() = 500223199101010001

数据仅供模拟演示,随机生成身份证号在现实中不存在的。

BK_RAND_EDUCATION

作用:生成随机学历。

=BK_RAND_EDUCATION

返回值:中文字符串

如:

=BK_RAND_EDUCATION() = 本科

BK_RAND_PROVINCE

作用:生成随机省份。

=BK_RAND_PROVINCE

返回值:中文字符串

如:

=BK_RAND_EDUCATION() = 河南

BK_RAND_PHONE

作用:生成随机手机号。

=BK_RAND_PHONE

返回值:11位数字

如:

=BK_RAND_PHONE() = 13800138000

BK_SCORE_DETAIL

作用:根据矩形区域的数据,生成横向得分详情。

=BK_SCORE_DETAIL(单元格区域,行号)

单元格区域:具体成员的数据区域

行号:标题所在的行号

返回值:字符串

如:

=BK_SCORE_DETAIL(B3:D3,2) = 微课+1,阅读+0.5,签到+2

根据数据生成详情总结

BK_ROUND_BANK

作用:银行家舍入法,四舍六入五成双。

=BK_ROUND_BANK(数值[,保留小数])

数值:必填,输入单元格地址或手动输入数值

保留小数:选填,默认为2

返回值:浮点数

如:

=BK_ROUND_BANK(2.25,1) = 2.2

=BK_ROUND_BANK(2.26,1) = 2.3

BK_REGEX_STRING

作用:正则提取字符串。

=BK_REGEX_STRING(原始数据,正则表达式[,是否只匹配组,第几个结果])

原始数据:必填,输入单元格地址或手动输入字符串

正则表达式:必填,正则表达式,\d+ 表示连续数字

第几组数据:选填,第几个()中的数据

第几个结果:选填,如果有多个结果,要第几个,默认全部

返回值:字符串

如:

=BK_REGEX_STRING("不坑老师18岁零2个月了","\d+") = 18,2

在Excel中实现正则提取

BK_REGEX_REPLACE

作用:正则提取字符串。

=BK_REGEX_STRING(原始数据,正则表达式[,是否只匹配组,第几个结果])

原始数据:必填,输入单元格地址或手动输入字符串

正则表达式:必填,正则表达式,\d+ 表示连续数字

**替换成什么:**替换成什么内容

返回值:字符串

如:

=BK_REGEX_REPLACE("不坑老师18岁了","\d+","2") = 不坑老师2岁了

在Excel中实现正则替换