根据扩展单元格数据去TOP3

INDEXOFARRAY(REVERSEARRAY(SORTARRAY(UNIQUEARRAY(SPLIT(REPLACE(F4," ",0),",")))),1) 

这个公式取出来是按数组的第一位数字排位,怎么改

FineReport frlxy 发布于 2023-11-28 18:00 (编辑于 2023-11-30 10:29)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
frlxyLv3初级互助
发布于2023-11-30 10:09

INDEXOFARRAY(REVERSEARRAY(SORTARRAY(MAPARRAY(SPLIT(a2,","),if(find(".",item)=0,CONCATENATE(item,".0")*1,item*1)))),1)

最佳回答
0
用户75150325Lv5见习互助
发布于2023-11-28 18:55

可以先通过临时隐藏字段的方法文本到数值的转换,以转换后的数字来排序。

  • frlxy frlxy(提问者) 不是很明白,REPLACE()转成文本了 怎么转到数字
    2023-11-29 13:25 
最佳回答
0
ID1208Lv6高级互助
发布于2023-11-29 09:29(编辑于 2023-11-29 14:28)

image.png

=SLICEARRAY(REVERSEARRAY(SORTARRAY(split("841,839,838,96,1106,1106,110,86",",")*1)),1,3)

  • frlxy frlxy(提问者) 这个公式出来还是跟我写的一样,96排在841,839前面
    2023-11-29 13:17 
  • ID1208 ID1208 回复 frlxy(提问者) 不是取top3吗?
    2023-11-29 13:24 
  • frlxy frlxy(提问者) 回复 ID1208 你看我的图片,倒数第三行SORTARRAY排序这里就有问题了,是按第一位数字排序的,不是按整个数组,最小的37的数组是最小的应该排在第一位
    2023-11-29 13:33 
  • ID1208 ID1208 回复 frlxy(提问者) 意思是,相同位数的数字大的排在前面,不同位数的数字,位数多的排在前面?
    2023-11-29 14:03 
  • frlxy frlxy(提问者) 回复 ID1208 比如数组是841,839,838,96,1106,1106,110,86的排序应该是,1106,1106,841,839,838,110,96,86,现在公式的排序是96,86,841,839,838,1106,1106,110
    2023-11-29 14:14 
  • 2关注人数
  • 266浏览人数
  • 最后回答于:2023-11-30 10:29
    请选择关闭问题的原因
    确定 取消
    返回顶部