前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Excel公式技巧:根据不同区域大小生成相应数字

Excel公式技巧:根据不同区域大小生成相应数字

作者头像
fanjy
发布2022-11-16 14:06:10
6660
发布2022-11-16 14:06:10
举报
文章被收录于专栏:完美Excel

如下图1所示,单元格区域F3:I3命名为“x”,有4个数据;单元格区域D2:E2命名为“y”,有2个数据;单元格区域“K1:L1”命名为“z”,有2个数据。

图1

现在,想要使用公式生成数组{1,2,3,4,1,2,1,2}或者{1,1,1,1,2,2,3,3},如何实现?

1.可以使用数组公式:

=COLUMN(A1:INDEX(1:1,,COUNTA(x,y,z)))-COUNTA(x)*(COLUMN(A1:INDEX(1:1,,COUNTA(x,y,z)))>COUNTA(x))-COUNTA(y)*(COLUMN(A1:INDEX(1:1,,COUNTA(x,y,z)))>COUNTA(x,y))

生成数组:

{1,2,3,4,1,2,1,2}

该公式的解析过程如下:

={1,2,3,4,5,6,7,8}-4×({1,2,3,4,5,6,7,8}>4)-2×({1,2,3,4,5,6,7,8}>6)

={1,2,3,4,5,6,7,8}-4×({FALSE,FALSE,FALSE,FALSE,TRUE,TRUE,TRUE,TRUE})-2×({FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,TRUE,TRUE})

={1,2,3,4,5,6,7,8}-{0,0,0,0,4,4,4,4}-{0,0,0,0,0,0,2,2}

={1,2,3,4,1,2,1,2}

2.可以使用数组公式:

=1+(COLUMN(A1:INDEX(1:1,,COUNTA(x,y,z)))>COUNTA(x))+(COLUMN(A1:INDEX(1:1,,COUNTA(x,y,z)))>COUNTA(x,y))

生成数组:

{1,1,1,1,2,2,3,3}

该公式的解析过程如下:

=1+{1,2,3,4,5,6,7,8}>4+{1,2,3,4,5,6,7,8}>6

=1+{FALSE,FALSE,FALSE,FALSE,TRUE,TRUE,TRUE,TRUE}+{FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,TRUE,TRUE}

={1,1,1,1,2,2,3,3}

这样,在找到各个不同区域相应的数字后,可以用在INDEX函数中,来获取相应的数值。

仔细想一想,获取这些数字似乎是有一定的规律的,可以依此类推。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-10-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档