我想使用Excel电子表格在多个竞争者中抽签一组项目。我做了一张工作表,其中有一个专栏,每个竞争者一个。在每一行上,第一列都有商品名称,如果每个用户对商品感兴趣,则在其单元格中输入“ y”:
项目-ABCDEFG- Foo-- Y- -Y- -Y--条-YYY-----卷-Y- -YY---Y-
然后,我添加了一个列,该列使用如下公式计算竞争者的数量:
COUNTA(表2 [@ [A]:[G]])
另一列用于在竞争者之间选择一个随机数,其公式如下:
= CEILING.MATH(RAND()* [竞争者单元数])
问题是:一旦有了获胜者的索引,我如何根据选择了哪个Y的索引来显示获胜者的名字?
我通过在第一个表旁边创建另一个表并为每个竞争者创建一列来解决了这个问题。每个单元的值=直到当前竞争者(包括竞争者)出现多少个“ Y”(或非空白)单元。每个单元格的公式为:
第一列仅等于如果相应单元格为空白:0否则为:1
= IF(ISBLANK(Table2 [@A]),0,1)
随后的列等于上一列+上面的公式:
= IF(ISBLANK(Table2 [@B]),0,1)+ K2
我现在有一个即将隐藏的表,它与我的原始表相对应,如下所示:
ABCDEFG 0-1-1-2-2-3-3 1-2-3-3-3-3-3 1-1-2-3-3-3-4
一旦有了该表,我就可以成功地使用match和index来获取给定行的第3个竞争者的名称。首先,我获得第n个非空白列的绝对索引(最后一个参数:0表示我想要一个精确匹配,这使我在该行的帮助器表中首次出现“ n”:
= MATCH(表2 [@ [彩票结果快照]],K2:P2,0)
然后使用该索引,我可以获得获胜选手的姓名(其中B1:H1包含列名称,而J:当前行列的单元格包含决策索引:
= INDEX($ B $ 1:$ H $ 1,1,IF(J2> 0,J2,“”))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句