読者です 読者をやめる 読者になる 読者になる

アナログCPU:5108843109

ゲームと音楽とプログラミング(酒と女とロックンロールのノリで)

書式設定

Excelで各種データを扱う際、書式設定の方法を覚えておくと、データの記入そのものやVBAプログラミングが楽になることがあります。
また、入力した内容によってExcel側が勝手に書式設定するのを防ぐため、あらかじめ設定しておくべき、という場面も多々あります。

例えば、以下の状態。
A1とA2、B1とB2にはそれぞれ同じように「500円」「600円」となっていますが、
「=SUM(A1:A2)」としているA3は合計されず、
「=SUM(B1:B2)」としているB3はきちんと合計されています。

f:id:honey8823:20150831104014p:plain

これはどうやっているかというと、
A列の方は見たまま「500円」と入力しているのに対して、
B列の方は「円」をくっつけて表示する設定にして「500」だけ入力してあるのです。
つまり、A列の方はただの文字列として、B列の方は数値として認識されるようになっています。

もうひとつ例を挙げると、以下の2行目はすべて「2015/5」と打ちこんだものです。
設定によってこのように色々と変わります。

f:id:honey8823:20150901180006p:plain

設定方法

設定したいセルを選択した後(一つでも複数でも可)、そのセルを右クリックして「セルの書式設定」を選びます。
「表示形式」タブで設定が可能です。

先程の例で言うと、B列の設定は「ユーザー定義」を選び、「0"円"」としています。

文字列

入力した値をそのまま表示する。

使用例
例えば、「2015/5」と入力した時に、「2015年5月(の1日)」と勝手に解釈されて
「2015/5/1」や「May-15」などという表記になってしまうことがあるが、
年月ではなくそういう文字列として扱ってそのまま表示してほしいとき。
※ただし、日付としての意味合いがあり「年/月」の形式で表示したいのであれば、文字列ではなく日付として設定するのがよいでしょう

設定方法
分類を「文字列」にする。
もしくは「ユーザー定義」で「@」と入力。
前後に特定の文字を表示したい場合は、
「"前に表示したい文字"@"後に表示したい文字"」という形にする。

数値

入力された数字を数値として表示する。

使用例
小数点以下の桁数やカンマ区切りの有無、負の数の表示形式を設定したいとき。
また、入力されているデータは数値として扱いつつも、単位をつけて表示したいときなど。

設定方法
分類を「数値」にする。基本的な内容は簡単に設定できる。

「ユーザー定義」で細かい設定をすることも可能で、その場合の書き方は以下の通り。

桁数を固定にしたい
→「0.00」(0を記入するとその数だけ固定される)
 ※端数は四捨五入される。
  また、整数部分を固定にする場合、指定桁数に足りない場合は0で埋められ、
  桁数を超えた場合は超えた分も表示される。
 例)1.5を入力
  「0.00」→「1.50」
  「0」→「2」
  「000.00」→「001.50」

カンマ区切りにしたい
→「#,##0」

単位をつけたい、特定の文字を表示したい
→「0"(単位)"」
 ※文字列の時と同様なので、数字の前につけることもできる。

正負で表示方法を変えたい
→「(プラスのとき);(マイナスのとき)」
 ※こうする場合、マイナス時は自動的に「-」がつかなくなる。

文字色を変えたい
→「[(色名)]0」
 「[青]0」など。赤、青、紫、黄などで設定が可能な模様。

もちろん以上の設定を合わせて使用することが可能で、
例えば「カンマ区切りで整数5桁と小数3桁を固定にして、
負数のときはマイナス記号をつけて文字色を青にしたい。単位は円で」という場合、
「00,000.000"円";[青]"-"00,000.000"円"」というふうになります。

日付と時刻

入力された文字列を日付・時刻として表示する。

使用例
入力した日付を決まったフォーマットで表示してほしいとき。

設定方法
分類を「日付」あるいは「時刻」に設定する。
表示方法や国・地域を簡単に設定できる。
もしくは「ユーザー定義」で細かい設定をすることも可能。
(日付と時刻を合わせて表示もできる)

「ユーザー定義」では下記を組み合わせて記述します。

年(例は2011年)
→西暦4桁(2011) :yyyy
 西暦下2桁(11) :yy
 和暦英略称(H) :g
 和暦日略称(平):gg
 和暦フル(平成):ggg
 和暦の年(23) :e

月(例は3月)
→2桁固定(03) :mm
 1桁でいい(3) :m
 英名略(Mar) :mmm
 英名(March) :mmmm
 英名頭文字(M):mmmmm

日(例は5日)
→2桁固定(05) :dd
 1桁でいい(5):d

曜日(例は木曜日)
→英名略(Thu) :ddd
 英名(Thursday):dddd
 和名略(木) :aaa
 和名(木曜日) :aaaa
 ※「木曜」なら「aaa"曜"」でなんとか。

時(例は09時)
→2桁固定(09) :hh
 1桁でいい(9):h

分(例は05分)
→2桁固定(05) :mm
 1桁でいい(5):m

秒(例は05秒)
→2桁固定(05) :ss
 1桁でいい(5):s
 ※数値と同じく、s.00等とすることで小数点以下も表示できます。

午前と午後を表示
→「hh:mm:ss AM/PM」というふうにすると、
 例えば21時なら「09:00:00 PM」となります。
 何の文字列でもいいわけではなく、「AM/PM」「A/P」「a/p」で動作?
 「午前/午後」では動きません。

サンプル集
ユーザー定義でいろんな設定することが(個人的に)一番多いのが日付。
せっかくなのでサンプルをいくつか記載します。

// 例:2015年05月01日
yyyy"年"mm"月"dd"日"

// 例:2015年5月1日
yyyy"年"m"月"d"日"

// 例:5/1(金)
m"/"d"("aaa")"

// 例:平成27年5月
ggge"年"m"月"

// 例:2015 May
yyyy" "mmm

その他

個人的には使いませんが、他にも「パーセンテージ」や「指数」があります。

パーセンテージは、平たく言うと
「入力されている数字に100をかけて末尾に「%」を表示」です。
ユーザー定義では「0%」というふうに設定します。
末尾に%をつけたいだけ(100をかけない)ならば、「0"%"」と記述すればOKです。

指数については、数学的な説明は省きますが、
例えば「1.23×10^2(=123)」を「1.23E+02」と表示します。
ユーザー定義では「0.00E+00」というふうに設定します。

小技

分類で、「ユーザー定義」以外の箇所で設定を行ったあと
「ユーザー定義」をクリックすると、「種類」欄にその設定が反映されています。

ユーザー定義以外の箇所で行えない設定をしたいけど
ゼロから作るのはめんどくさい…というときは、
他のところで希望にできるだけ近い設定を行ってから、
「ユーザ定義」のところで少し修正を加える、というふうにするのが便利です。

また、設定を行ったセルをコピーペーストすると、
データはもちろんですが、設定も一緒にコピーできます。
逆にデータだけをコピーしたいときは注意です。