Excel。ABCを繰り返すデータを手早く入力するにはどうしたらいいの。
<CHAR+MOD+ROW関数>
条件はなく、単純に上位から、ABCという3クラスに割り振りたい。
だけど、データが多くて、コピーなどで対応するにも面倒です。
そこで、関数をつかって、ABCと繰り返すデータを作りたい場合、どのような数式を設定したらいいのでしょうか。
次の表をつかって、数式をつくっていくことにします。
D2には、
=CHAR(MOD(ROW()+1,3)+65)
という数式を設定してあります。
オートフィルで数式をコピーしたら、ABCを繰り返して表示します。
では、数式について説明します。
最初のCHAR関数は後回しにして、先にMOD関数とROW関数で何をしているのかから確認していきます。
MOD(ROW()+1,3
ROW関数は、行番号を算出する関数です。
引数の指定をしないと、アクティブの行番号を算出します。
D2なので、「2」を算出します。
その値に「+1」しますので、「3」と算出されます。
MOD関数は、除算した余りを算出する関数です。
ROW関数で算出した結果の「3」をMOD関数の2番目の引数が3になっているので、3で除算した余りは、「0」。
この「0」に65を足します。
「65」はどこからきたのかというと、「A」の文字コードが65だからです。
CHAR関数は、数値をその数値が割り振られている文字に変換する関数です。
CHAR関数をつかうことで、65はAと変換してくれるというわけです。
「65」を算出したかったので、MOD(ROW()+1,3 で、「0」を算出させるような数式をつくったというわけです。
オートフィルで数式をコピーすれば、余りは、「0と1と2」の3種類をつくることができるというわけです。
そうすることで、ABCを繰り返したデータを手早く設定できます。