全ての場合を網羅するために、同じ数字や文字を特定回数繰り返したい場合があります。
そんな時に使えるのが REPT
関数です。
CONCATENATE
と TRANSPOSE
と組み合わせればより強力に動作します。
0.1刻みで0-1の場合を3つの変数で組み合わせたい
# 左の列
=transpose(split(CONCATENATE(rept("0,",121),rept("0.1,",121),rept("0.2,",121),rept("0.3,",121), rept("0.4,",121), rept("0.5,",121), rept("0.6,",121), rept("0.7,",121), rept("0.8,",121), rept("0.9,",121), rept("1,",121)),","))
# 真ん中の列
=transpose(split(rept(CONCATENATE(rept("0,",11),rept("0.1,",11),rept("0.2,",11),rept("0.3,",11), rept("0.4,",11), rept("0.5,",11), rept("0.6,",11), rept("0.7,",11), rept("0.8,",11), rept("0.9,",11), rept("1,",11)),10),","))
# 右の列
=transpose(split(rept("0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1,",100),","))
これの右側(D1)に
=arrayformula(A1:A*0.1+B1:B*0.3+C1:C*0.5)
みたいなものを記載すれば x*0.1+y*0.3+z*0.5
の最大値とその時の組み合わせが簡単にもとめられます
最後に
マーケティングでよく使うと思いますが、作りながら学校の宿題でも出そうだなぁと思いました。
学校の宿題の参考にもなれば幸いです