エクセルの日付表示
エクセルのワークシート上で、あるセルに入力されている日付を参照して表示したいときがある。
ただ参照しただけだと期待したとおりにはならず、 38421 というような数字が表示される。これは日付として入力された値をコンピュータ内部では38421.26548753・・・・というような数値(これをシリアル値という)に変換して保持しており、その数値がそのまま表示されたというわけだ。
日付として表示するにはどうするか?
- 書式設定の表示形式でユーザー定義を使い「yyyy"年"mm"月"dd"日"」という感じで指定する
- 関数を使って、「=YEAR(B22)&"年"&MONTH(B22)&"月"&DAY(B22)&"日"」
というように年・月・日をそれぞれ求めてそれらを繋ぐ
という方法が考えられる。
書式設定で解決するのが簡単だが、場合によってはこれでは困るような場面もある。そういうときのために関数でのやり方も知っておいて損はない。
もう一つ、上で示した関数だと、年が西暦になってしまうので、和暦で表示したい場合には使えない。残念ながらExcelの通常の関数では解決できないようだが、マクロ(VBA)を利用すればできる。VBAでユーザー定義関数を作り、それを呼び出して利用するのだ。
- Excelの「ツール」-「マクロ」-「VISUAL BASIC EDITOR」を選択して、VBAの編集画面を表示させる。
- ユーザー定義関数は標準モジュールに記述する。
画面左側のプロジェクトエクスプローラに「標準モジュール」が出ていない場合は「挿入」-「標準モジュール」で「module1」を作成する。 - 関数の名前は、好きな名前にしてよい。仮に今回は「WAREKI()」とする。
記述内容は下記の通り。
Public Function WAREKI(日付)
WAREKI = Format(日付, "gggee年mm月dd日")
End Function
※ 式の中で「日付」となっている部分は、Excel上で関数を使う際にWAREKI(日付)でカッコ内に指定した値が使われる。
出来上がったら、VBA画面を閉じて、Excel上で「=WAREKI(TODAY)」とやってみると、今日の日付が和暦で「平成20年08月21日」と出る。
また、セルに入力されている値を使いたければ「=WAREKI(C4)」という感じで参照すればよい。
後ろに文字列をつけたいなら「=WAREKI(TODAY)&” 現在”」で「平成20年08月21日 現在」と表示される。
« 福島県立大野病院事件で無罪判決 | トップページ | ソフトボール日本が金メダル »
「パソコン・インターネット」カテゴリの記事
- IIJ BIC SIMウェルカムパックを購入(2013.07.29)
- U-NEXTに内容証明でクーリングオフ(2012.01.31)
- エクセルでドロップダウンリストが出なくなったとき(2011.12.01)
- U-NEXTの契約のお知らせ(2011.08.10)
- U-NEXTと契約締結?(2011.08.05)
この記事へのコメントは終了しました。
コメント