TODAY関数を使ったとき、前回保存した日付が1/1だったとすると、次に開いたとき日付は1/1から変わらず
保存をすると、日付が今日の日付になるようなことはできますか?
と上記を質問した所、
---------------------
関数ではちと無理っぽいですね。
ではこうしましょう。
1.AltキーとF11キーを一緒に押してください。VBエディター画面となります。
2.画面左側のVBAProjectのThisWorkbookをダブルクリックします。
3.右側の白い部分に下記をコピーして貼り付けます。
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Sheets("Sheet1").Range("A1") = Date
End Sub
4.AltキーとF11キーを一緒に押してワークシートに戻ってください。
5.保存してください。これでSheet1のA1に今日の日付が入ります。
6.次に開くときはマクロを有効にして開いてください。
-------------------------------------------------とどなかに教えて頂きました。
更に教えてほしいのですが、上記では数種類のワークシートがあった時にどこかのワークシートで保存をしたらすべてのワークシートに反映して日付がかわってしまいます。開いてるワークシートかつ指定のワークシートのみ保存したら日付が変わるようにできないでしょうか?
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
>すべてのワークシートに反映して
Sheets("Sheet1") とシート名を指定しているので、指定したシート以外に反映する事は無いはずです。
それでもすべてに反映しているのなら、他のシートからこの日付を参照しているか、別の関数が入っていることになります。
>指定のワークシートのみ保存
これもエクセルではできません。
保存するならブック単位になるので、特定のシートの変更だけを保存する事はできません。
>開いてるワークシートかつ指定のワークシート
ActiveSheet.Range("A1") = Date で、開いているシートの値を変更して保存できます。
また「指定のワークシート」とは毎回変化するのですか?
それなら毎回何らかの方法でシートを指定しなくてはいけませんが・・・。
No.2
- 回答日時:
一度締めた質問をコピペで再投稿では前に答えた人に失礼ですし、脳内仕様はいつまでも回答者に伝わりませんよ。
ようするに編集日を残したいなら Thisworkbook に
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim r As Range
For Each r In Target
If r.Column = 2 Then Sh.Range("A1").Value = Now
Next r
End Sub
ってな感じでも良いのでは?
B列に手を加えた日時をA1に入れます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) VBAコードを張り付け後のエクセルの進め方 2 2023/02/07 18:24
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 11:02
- Excel(エクセル) ②Excel 簡単にシートコピーしたら前日の残高と日付を変更させたい→マクロの記録でエラーが出ます 8 2022/07/16 20:40
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) フォルダ内の全ブックのシート名を変更したい 7 2022/09/22 21:34
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELで複数のシートを一度に「...
-
エクセルで複数のシートに画像...
-
Accessのテーブルを既存のExcel...
-
エクセルでブック内の倍率がバ...
-
特定のシートのみ再計算させな...
-
Wordで差し込み印刷時に表示す...
-
EXCELの「シートの見出し」のフ...
-
ワークシートそのものの色を変...
-
エクセルでリンク貼り付けした...
-
エクセルのシー名を二段表示に...
-
エクセル、特定のシートにパス...
-
EXCELの図形(テキストボックス)...
-
エクセルの2つのシートを並び...
-
エクセル 非表示のシートをハ...
-
エクセルを開くとメニューバー...
-
【Excel VBA】データ貼り付け先...
-
(エクセル)Indirect関数で、ハ...
-
エクセルでシートを追加したと...
-
PowerQueryで行数の指定はでき...
-
エクセル、別のシートの表をポ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで複数のシートを一度に「...
-
エクセルで複数のシートに画像...
-
特定のシートのみ再計算させな...
-
エクセルでブック内の倍率がバ...
-
ワークシートそのものの色を変...
-
【ExcelVBA】マクロの入ったシ...
-
エクセルの2つのシートを並び...
-
EXCELの図形(テキストボックス)...
-
ハイパーリンクでジャンプした...
-
エクセルのシート連番の振り直し
-
特定の複数のシートに同じ処理...
-
エクセルのシー名を二段表示に...
-
Wordで差し込み印刷時に表示す...
-
エクセルで、シートの名前を変...
-
エクセルでリンク貼り付けした...
-
エクセル、特定のシートにパス...
-
accessへエクセルの複数のシー...
-
Accessのテーブルを既存のExcel...
-
【Excel VBA】データ貼り付け先...
-
EXCELの「シートの見出し」のフ...
おすすめ情報