Excel函数求助:随机抽取一个指定区域单元格的值?

左侧A2到G2为指定数据区域,希望在I2输入函数公式 从左侧指定区域随机抽取出一个非#N/A的结果(每次执行公式均随机抽取)
注:目标区域值及#N/A的位置不是固定的。

下图为具体示例,求教函数公式,万分感谢!

在I2单元格输入以下公式
=MID(PHONETIC(A2:G2),RANDBETWEEN(1,LEN(PHONETIC(A2:G2))),1)
公式表示:通过PHONETIC将A2:G2文本内容相连,错误提示不在相连范围内,然后通过随机位置,取字符串的一个字符长度,即可达到随机取单元格内容的目的,且不会将错误值纳入取值范围。追问

实际情况稍复杂 具体原因是:

如图1:抽取函数的指定区域值是vlookup出的(而且A2-W3的提取值还会随A1-W1数值的修改而变化)。

那么问题来了:如图2:利用您提供的公式后,无法抽取值,我想可能是因为Vlookup后的左侧指定区域值不是文字,所以您这个复杂问题看还有更好的方式吗?


追答

输入以下公式
=MID(PHONETIC(AA2:AA12),RANDBETWEEN(1,LEN(PHONETIC(AA2:AA12))),1)

合并单元格会显著下降Excel的处理能力。

追问

这样的话 指定区域就变成了AA列 截图出是为说明具体情况(目标区域指定还是需要只在A2-S1区域),我把具体问题简化成这个表具体会更复杂,因此还请帮忙想想办法,特别感谢了!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-07-18
=LOOKUP(RANDBETWEEN(1,COUNTA(A2:G2)),IF(ISTEXT(A2:G2),COLUMN(A:G)),A2:G2)
数组公式 ctrl+shift+enter结束追问

您好刚刚尝试公式没问题,提示有合并单元格(非常多且难以修改),提示在合并单元格中数组公式无效,您看怎么解决呢 ? 谢谢!

追答

先取消合并 输入公式之后 三键 再合并就行了

追问

取消了合并,不过产生了问题:

取消后数据不是一个连续的序列(因为拆分单元格后会隔空列)

见下图:

相似回答