質問

エクセルで「○年○月○日作成」を自動表示する方法を教えてください。(書類を作成したその日の日付が自動入力されるよう)

通報する

回答 (8件)

VBAですが、ブックを閉じた時の日付けを例えばD1セルに表示するのはどうですか。
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Cells(1, 4) = Date & "作成"
End Sub
開いた時は「02/10/09作成」(ブックを閉じた日)になります。
または
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Cells(1, 4) = Date & "作成"
End Sub
の方が良いかもしれません
(1)ワークシートの画面でALT+F11
(2)ALT+I、ALT+M
(3)VBAプロジェクトのThisWorkbookに上記コードを
貼り付け。

印刷した日付とかファイルを開いた日付というご質問なら、すでに回答がついているとおりです。

保存した日という意味のご質問なら、ファイル名に「保存の年月日と識別文字列」を書き、ファイル名をヘッダにすれば、簡単にできると思います。私は、10年以上前から、この方法です。

みなさんの方法(TODAY関数)だと、現在の日付が表示されてしまいますよね?
つまり、書類を実際に作成した日は正しく作成日が表示されますが、後日その書類を開くと開いた日付に変わってしまいます。(そういう関数なので当たり前ですが。)

質問者の方が言われる作成した日=開いた日(印刷した日等)でもよければいいのですが……。かといって、簡単な別の方法は思いつきません。
方法としたら、指定のセル(現在のセル位置等)に日付を入力するマクロ(VBA)を作るくらいかな……?

TODAY関数ではそのエクセルファイルを開いた日付に更新されてしまうのでちょっと違うような気がします。(自動計算をしない設定にしておけば大丈夫なような気もしますが…)
ファイルのプロパティの作成日付を持ってこればよいのでは?(方法はわかりません。VBAでできるかも…?)

一つのセルに表示させるなら、
=TEXT(TODAY(),"yyyy年mm月dd月")&"作成"
こんな具合です。
mmやddは、m、dと一文字にしておくと、つきや日が、一桁台の日は、頭に0が表示されないようになります。桁を合わせなくてよいなら、m、dそれぞれ一文字ずつにしてもいいと思います。

そのセルに
=TODAY()
と入れれば、現在の日付が表示されます。
あとは、セルの書式設定の表示形式-日付から、「○年○月○日」のものを選択してください。
次いで、そのセルの配置を「右寄せ」にします。
そして、その右隣のセルに「作成」を「左寄せ」で入れれば完成です。

エクセルのヴァージョンにもよるかもしれないですけど・・・。
ファイル→ページ設定→ヘッダーフッター→ヘッダーに(上の方に表示する場合)はヘッダーの編集。フッターならフッターの編集→そうすると左側、中央部、右側という欄があると思うので自分が置きたい場所にカーソルを持っていき、カレンダーマークのボタンがあると思うのでそこをクリック。そして、OK。これがダメなら手で入力すれば出てきます。

こんにちは。

単純な話「TODAY関数」と表示形式だけでOKでは?

任意のセルに「 =TODAY() 」とはる。
次にセルの書式設定で“表示形式”を“ユーザ定義”にし、「ggge"年"m"月"d"日作成"」とすればどうでしょう?

このQ&Aは役に立ちましたか?4 件

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

新しく質問する

アンケートのお願い
新しく質問する

このカテゴリの人気Q&Aランキング

毎日見よう!教えて!gooトゥディ

べんりQ&A特集