• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:関数NOWについて)

関数NOWでセルに入力時間を残す方法とは?

このQ&Aのポイント
  • 関数NOWを使用してセルに入力時間を残す方法はありますか?A行にデータを入力した場合、同じ列の隣の行のセルに入力時間を自動的に表示させたいですが、B1に関数を入れてドラッグすると、後の行の入力時間も更新されてしまいます。
  • B1以降のセルに関数NOWを使用して入力時間を残す方法を知りたいです。B1に関数を入れてドラッグしたら、後の行の入力時間も更新されてしまいますが、以前の入力時間をそのままに残す方法はありますか?
  • セルに入力時間を残すために関数NOWを使用したいですが、ドラッグしたら後の行の入力時間も更新されてしまいます。以前の入力時間を残す方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.4

#2,3のmshr1962です。 >A列以外にもC列にもデータを入力したときD列に時間が出るといったマクロはどのようにすればよいでしょうか? '///A列のセル以外ならマクロ終了/// If Target.Column <> 1 Then Exit Sub          ↓ '///A,C列のセル以外ならマクロ終了/// If Target.Column <> 1 Or Target.Column <> 3 Then Exit Sub もっと増える場合はSelect Caseを使った方がいいかもしれません。 Select Case Target.Column Case 1,3 実行処理 End Select で制御できます。

masya1999
質問者

お礼

ありがとうございます!感謝です! 大変参考になりました。 また何かありましたらよろしくお願いいたします。

その他の回答 (3)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.3

#2のmshr1962です。サンプルマクロですが... Alt+F11で表示される画面でマクロを設定するWorkSheetをダブルクリックして貼り付けてください。 Private Sub Worksheet_Change(ByVal Target As Range) '///A列のセル以外ならマクロ終了/// If Target.Column <> 1 Then Exit Sub '///1行目のセルならマクロ終了/// If Target.Row = 1 Then Exit Sub '///内容がブランクならB列のセルをブランクにする。/// If Target.Value = "" Then Target.Offset(0, 1).Value = "" Else Target.Offset(0, 1).Value = Format(Date + Time, "yyyy/mm/dd hh:mm:ss") End If End Sub ※「ツール」「マクロ」「セキュリティ」の内容が「最高」「高」だとマクロが動かない場合があります。 「中」にすればブックを開いた時に確認画面が出るので「有効にする」を選択してください。

masya1999
質問者

お礼

すごい!ありがとうございます。 大変お手数ですが、 A列以外にもC列にもデータを入力したときD列に時間が出るといったマクロはどのようにすればよいでしょうか? 例としては A1:あ B1:2006/5/9 14:00  C1:う D1:2006/5/10 15:00 このような場合はこのマクロのどの部分を編集すればいいでしょうか? まとめて質問しなくてすいません。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.2

現状では数式を値化するしかないですね。 入力時に「Ctrl+;」で今日の日付、「Ctrl+:」で今の時間が入力可能なので このショートカットの間にスペースを一つ設定して手入力するか? マクロでA列に入力があったら隣のセルに時間(Time)を入力する設定を作るかですね。

masya1999
質問者

お礼

ご返答ありがとうございます。 マクロを勉強します。 そうでしたか、できればどのようなマクロの作ればいいのかご教授頂けると幸いなのですが、よろしくお願いします。

  • handomari
  • ベストアンサー率47% (83/174)
回答No.1

メニューから、ツール-オプションで、計算方法を手動にしておけばいったん表示された日時は更新されないはずです。

関連するQ&A