Excelには現在400を超える関数があるが、その中の一つに「REPT関数」なるものがある。
「Repert」の略の通り、文字列を指定した回数くりかえすという、とてつもなく地味な関数だ。
=REPT("文字列",回数)
と記述して使用する。
初めて知った時、「こんな関数、どうやって使うんだ?」と疑問に思った。
「A」を100回繰り返した文字列を作りたいなら便利なのかもしれないが、そもそもそんなことをする意味がない。
いろいろと調べていくうちに、使い道がおぼろげながら見えてきたのでご紹介する。
1.文字列の桁数をそろえる。
いろいろな桁の数字があって、それらをすべて頭に「0」をつけて桁数を揃えたい場合、以下のような記述で表現できる。
LEN関数は指定したセルの文字数を返す関数で、「10-LEN(セル)」と書くことで、10桁にするために必要な「0」の繰り返し回数を取得できる。
2.簡易グラフを作る
小さな数であれば、記号を組み合わせて疑似グラフを作ることができる。
C列の数に応じてD列にその数だけ「★」を並べるだけで、簡易的なグラフになった。
さらに先ほどの桁数を合わせる方法と組み合わせることで、以下のような疑似グラフも作れる。
数値の分だけ「■」を表示し、15桁に足りない分を「□」で表示している。
しかしこの場合、数字が15を超えてしまうとエラーになる。
その場合は、MAX関数で値の最大値を取得して、それを最大の桁数とすることで解決する。
図の場合、C3~C8セルの範囲の最大値は16なので、D3~D8セルは全て16桁で表示される。
3.人口ピラミッドグラフを関数だけで作る。
REPT関数に加えて、「Britannic Bold」というフォントを組み合わせるとより忠実に棒グラフを作ることができる。
キーボード右奥、Enterキーの左奥あたりにある「¥」キーをShiftキーを押しながら入力すると「|」という文字が表示される。
これをREPT関数で繰り返し表示してBritannic Boldフォントにすると、棒グラフのように表示される。
もしご自分のパソコンにBritannic Boldフォントがインストールされていないなら、下記サイトで無料で手に入る。
上記ページはだましリンク(広告)が多いので、必ず下図の「ダウンロード」をクリックすること。
そもそも、セルに棒グラフを表示したいなら「条件付き書式」の「データバー」を使えば簡単に表示できる。
しかし、下図のようにグラフの両端に数値を表示したい場合など、細かな見た目にするには今回紹介する方法で簡単に表示できる。
この方法で、テレビなどでよく見る人口ピラミッドのグラフが関数だけで作れるようになる。
具体的な方法については下記の通り。
年齢階級・性別ごとの表を作成し、それぞれをREPT関数で疑似グラフ化する。
グラフの左側(男性)は数字を左端に表示したいので
=C3&" "&REPT("|",C3)
と記述し、右側(女性)は数字を右端に表示したいため
=REPT("|",D3)&" "&D3
と記述する。
グラフと数字の間に「" "」を入れたのは、数字をグラフから半角スペース一個分話した方が見やすいと思って入れただけなので、気にならないなら省略しても構わない。
言い忘れが、REPT関数の繰り返し回数の数値は整数以外を指定すると、小数点以下は切り捨てになる。
個人的にはREPT関数は上記のような使い方以外は思いつかなかった。
なんにせよ地味な関数なので、覚えなくてもおそらく何の問題もない。
ただ、こんな地味な関数でも、頭の片隅にでも置いておけば何かの拍子に他の関数と組み合わせておもしろいことができるかもしれない。
Excel関数の醍醐味は、「関数の組み合わせ」によって生まれる独創的なアイデアにある。