谷歌表单:随机生成器随机错误



我一直在为Pathfinder(一款类似D&D的游戏(开发随机角色生成器。我的生成器工作得很好,具有一些高级功能,可以使用=randbetween函数创建动态范围。我把它设置为根据切换的复选框来注释列表中的范围。这在大多数情况下都有效,但有时函数会在不应该返回FALSE的时候返回,但没有错误代码,我很难找到问题。这是我函数的一个基本示例。

=if(B3=true,index({ 
IF(B5=TRUE,{D5,E5,F5}), 
IF(B6=TRUE,{D6,E6,F6}), 
IF(B7=TRUE,{D7,E7,F7}) 
},randbetween(1,COUNTA({ 
IF(B5=TRUE,{D5,E5,F5}), 
IF(B6=TRUE,{D6,E6,F6}), 
IF(B7=TRUE,{D7,E7,F7}) 
}))),"")

这是工作表的链接。https://docs.google.com/spreadsheets/d/1YS3ayQxS6vA67dlh61hrr-zJzWdOL5LWZj8_P0Wblko/edit?usp=sharing

您提供的函数示例工作正常。工作表中的这一个并不是因为您在带括号的数组中的IF函数之前错误地放置了=符号,这不是正确的语法。

更改此项:

=if(B3=true,index({
=IF(B5=TRUE,AlignmentGood),
IF(B6=TRUE,AlignmentNeutral),
IF(B7=TRUE,AlignmentEvil,"No Input")
},randbetween(1,COUNTA({
=IF(B5=TRUE,AlignmentGood),
IF(B6=TRUE,AlignmentNeutral),
IF(B7=TRUE,AlignmentEvil,"No Input")
}))),"No Input")

对此:

=if(B3=true,index({
IF(B5=TRUE,AlignmentGood),
IF(B6=TRUE,AlignmentNeutral),
IF(B7=TRUE,AlignmentEvil,"No Input")
},randbetween(1,COUNTA({
IF(B5=TRUE,AlignmentGood),
IF(B6=TRUE,AlignmentNeutral),
IF(B7=TRUE,AlignmentEvil,"No Input")
}))),"No Input")

最新更新