EXECL関数のみで、データバー的なものを表現する


REPT関数を使用して、データバーを再現しました。自身以外の数値でも計算できるので、使い道はあるかと思います。
拡大率を変更すると見た目が変わってしまうので注意。

1[AB:AC]

=REPT("|" , 対象のセル )

これで数値分の"|"(ヴァーティカルバー:Shit+¥(Backspaceの隣))が表示されます。

■や環境依存文字なども使用できます。

書体を$"HG正楷書体-PRO"$や$"教科書体"$などにしてフォントサイズを小さくすると"|"の間隔がほとんどなくなりデータバー風になります。
文字サイズを変更することでも見た目が変わります。

<サンプル> 文字数、文字サイズ、文字色はすべて同じです

フォントサイズを11=>6に変更


2[AE:AG]

2列使用して80を超えると赤く表示します。

1列目: =if( 対象セル <=80 , REPT("|", 対象のセル ) , REPT("|",80))

2列目: =if( 対象セル <=80 , ""                    , REPT("|", 対象のセル - 80))

としています。あとは1列目の幅を調整して、2列目の文字色を赤くしてやれば完成です。
(数値を赤くしたり背景を塗るのは条件付き書式で)


3[AI:AJ]

3つ目では、現在までの経過日数を出していますが、1日="|" にしてしまうと長くなってしまうので、15で割って約半月="|"にしています。

=REPT("|" , ( NOW()- 対象のセル )/15 )

例えばを最大値を決めたければ

=REPT( "|" , 対象のセル / 最大値 * 表示させる最大文字数 )

ex1.) =REPT( "|" , 対象のセル / 100 * 10 )
    '最大値100を10個の"|"で表示する

ex2.) =REPT( "|" , 対象のセル / MAX( すべての対象のセル範囲 ) * 100 )
    'すべての対象のセル範囲中で最大のものを100個の"|"で表示する = パーセント(%)表示

とすることで決められます。


4[AL:AP]

一番右の表では合計の欄に

="  " & SUM( 対象範囲 ) & REPT( " " , 5 - LEN( SUM( 対象範囲 ))) & REPT( "|"  ,SUM( 対象範囲 ) / 10 )

1.                            "  "   '最初の余白'
2.                   SUM( 対象範囲 )  '合計'
3. REPT(" ",5-LEN(SUM( 対象範囲 )))   '5文字になるように" "を追加'
4.      REPT("|",SUM( 対象範囲 )/10)  '数値の数/10だけ"|"を表示'

と入力しています。

書体によっては、数字とスペースの幅が異なるので、バーの開始位置が合いません。
幅が同一の$"SimSun"$などの書体に変更します。

(バーと合計の表示順を逆にすればいいだけでは?)


色も付きます

追記

文字の方向を回転させればグラフも作成できます

REPT関数に小数点を含む数値を指定した時と、切り上げ/切り捨て/四捨五入



以上