noteプログラミング関連2011-11-16Excelの書式"表示設定"で桁の異なる数値を見やすくしてみるMSExcel2010を触ってみたので練習を兼ねて。少なくともExcel97以降、もしかしたらもっと前のバージョンでも使えるかも知れません。ある数値項目の列の書式を、「カンマ区切りで、小さな数値は小数第3位まで表示するけど、100以上の大きな数値は小数点以下は端数なので省略して表示」させるようにしてみます。最終的に下のようになるようにします。100,0001,000,000せっかくなので、表示形式について、ちょっとまとめながら書いておきます。私も書式設定の細かいルールは記憶してはいないので、どうするかというと、[セルの書式設定]の[表示形式]タブを開き、[分類]の既定の書式を選択&設定してから、"ユーザー定義"を選択すれば、ユーザー定義書式の雛形が作成されます。日付の"2001/3/14"を選択してからユーザー定義を選択すると、"yyyy/m/d;@"となります。詳しいところは正確ではありませんが、日付ならば"yyyy/m/d"形式で、そうでなければ文字列(@)として表示、という意味です。これを、月日を常にゼロ埋めして区切りをハイフン(-)にしたい場合は、yyyy-mm-dd;@とします。最後の";@"は無くても同じ結果になります(たぶん)。この書式にした場合、2001/3/1は"2001-03-01"になります。こんな感じで、既存の書式をちょっとずつカスタマイズすることで、好みの書式に近づけることができます。目的の書式を考えてみます。「カンマ区切り」「小数点第3位まで表示」は、分類の"数値"の"小数点以下の桁数"を"3"にし、"桁区切りを使用する"をチェックします。"(末尾にスペースが付く)が得られます。小数の不要なゼロをスペースにしたい場合は、"0"の代わりに"?"を配置します。これだと、ちょうど10などの場合でも"10.0"となってしまいますが、今のところどうやるかは分かりません。分かったら追記するかも知れません。次に、条件によって書式を変えるには、[条件式]表示形式1;表示形式2のようにします。