スポンサードリンク

無料ブログはココログ
2022年4月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

« 福島県立大野病院事件で無罪判決 | トップページ | ソフトボール日本が金メダル »

2008年8月21日 (木)

エクセルの日付表示

エクセルのワークシート上で、あるセルに入力されている日付を参照して表示したいときがある。

ただ参照しただけだと期待したとおりにはならず、 38421 というような数字が表示される。これは日付として入力された値をコンピュータ内部では38421.26548753・・・・というような数値(これをシリアル値という)に変換して保持しており、その数値がそのまま表示されたというわけだ。

日付として表示するにはどうするか?

  1. 書式設定の表示形式でユーザー定義を使い「yyyy"年"mm"月"dd"日"」という感じで指定する
  2. 関数を使って、「=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日 現在」と表示される。

« 福島県立大野病院事件で無罪判決 | トップページ | ソフトボール日本が金メダル »

パソコン・インターネット」カテゴリの記事

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: エクセルの日付表示:

« 福島県立大野病院事件で無罪判決 | トップページ | ソフトボール日本が金メダル »