计算用逗号分隔的数字串中的最大数字

例题描述和简单分析

ExcelA列是由逗号分隔的数字串,如下:


A

1

1,2,3,4,5,6,7,8,9,10,11,12,13,14,15

2

7,45,31,12

请在B列和C列分别算出最大和最小的数字,如下:


A

B

C

1

1,2,3,4,5,6,7,8,9,10,11,12,13,14,15

15

1

2

7,45,31,12

45

7

本题涉及字符串拆分、类型转换、数列的极值

解法及简要说明

Excel中配置集算器add-in,重启Excel,在B1单元格编写:

=esproc("=?.split@cp().max()",A1)

B1格下拉或向下复制,即可算出A列的最大值。函数split将字符串拆分为序列,@c表示按逗号拆分,@p表示自动解析数据类型,比如整数字符串解析为整数。

类似地,将max换成min可求出最小值。

问答搜集

https://stackoverflow.com/questions/63842304/how-can-i-get-the-minimum-value-from-a-comma-separated-cell-containing-number