【菁培函高班PK赛】根据B列要求生成指定区间随机整数

张俊
张俊

WPS函数专家

要想下班早,表格必须用的好!

大家好,我是张俊。

场景

现需要随机生成一列随机正整数,第一行为1位数字,第二行为2位数字,以此类推,如下图:

题目要求

现需要你只能在A2单元格中录入函数公式,根据B列要求实现如下功能:

  1. 只能在A2单元格中输入函数公式

  1. 必须使用WPS表格现有的函数公式

  1. 必须使用动态数组版本

  1. 具体效果如下:

示例文件

👉【菁培函高班PK赛】根据B列要求生成指定区间随机整数👈

上海
浏览 927
收藏
7
分享
7 +1
42
+1
全部评论 42
 
天马行空
已经是无源可查了
· 河南省
1
回复
张俊
张俊

WPS函数专家

哈哈,好吧,等遇到这个问题后,最好从0到1的追溯下。期待能明白这个问题是咋出现的,我很好奇。
· 北京
回复
 
小宇宙
我用的是这个耶: =RANDBETWEEN(1&REPT(0,ROW()-2),9&REPT(9,ROW()-2))
· 贵州省
1
回复
张俊
张俊

WPS函数专家

很棒,很棒,用动态数组溢出的话,最好在ROW函数里面区域。
· 北京
回复
 
张俊
张俊

WPS函数专家

公布答案: =RANDBETWEEN(10^(ROW(A2:A12)-2),10^(ROW(A2:A12)-1)-1) 具体如下图:
· 贵州省
回复
阿滨
阿滨

社区优秀创作者

俊哥思路很哇塞,优化下我的哈哈
· 江苏省
1
回复
 
岳玉柱
凑个热闹 数组公式 : =RANDARRAY(1,,10^(ROW()-2),10^(ROW()-1)-1,TRUE)
· 山东省
1
回复
张俊
张俊

WPS函数专家

公布答案了,来看看和你思路的差异!
· 贵州省
回复
 
wps新路
wps新路

WPS函数专家

都被写的差不多了。。。。=RANDBETWEEN(1&REPT("0",ROW(A1)-1),REPT("9",ROW(A1)))
· 重庆
1
回复
张俊
张俊

WPS函数专家

新路老师很厉害,不过只能在A2单元格写,要用动态数组公式写法,自动溢出结果的哦~
· 贵州省
回复
 
天马行空
=RANDBETWEEN(10^(ROW()-2),10^(ROW()-1)-1)
· 河南省
1
回复
张俊
张俊

WPS函数专家

天马星空老师也很厉害,写的很棒,不过要求要用动态数组版本哦,且只能在A2单元格写函数,其他内容自动溢出哦~
· 贵州省
1
回复
 
阿滨
阿滨

社区优秀创作者

借鉴了楼上,优化了下更简便些
· 江苏省
1
回复
张俊
张俊

WPS函数专家

滨哥写的也很奈斯,不过需要用动态数组版本,且只能在A2单元格内录入函数,其他内容需要自动溢出哦~
· 贵州省
回复
 
郑亿Oscar
郑亿Oscar

创作者俱乐部成员

=RANDBETWEEN(10^(ROW(A2)-2),10^(ROW(A2)-1)-1) RANDBETWEEN() 函数接受两个参数,并返回介于这两个参数之间的一个随机整数。 在这个特定的公式中,第一个参数是 10^(ROW(A2)-2),第二个参数是 10^(ROW(A2)-1)-1。
· 浙江省
1
回复
张俊
张俊

WPS函数专家

Oscar老师的两个公式都很厉害哦,不过需要用动态数组公式哦~只能在A2单元格写,其他内容需要自动溢出哦~
· 贵州省
回复
 
郑亿Oscar
郑亿Oscar

创作者俱乐部成员

=INT(RAND()*(10^(ROW(A1)-1))*10+1) 这个公式使用了RAND函数生成0到1之间的随机数,然后通过乘以10的幂次方和加上1来生成指定位数的随机正整数。ROW函数用于获取当前行的行数,从而确定要生成的随机数的位数。例如,在A2单元格中使用该公式将生成一个1到9之间的随机整数,在A3单元格中使用该公式将生成一个10到99之间的随机整数,以此类推。
· 浙江省
1
回复
张俊
张俊

WPS函数专家

Oscar老师好,答案已经公布了,感谢支持,欢迎继续探讨!
· 贵州省
回复