10秒目をつむったら…

Excel2000で 製品検査のチェックシートを作ります。 検査完了項目のセルをクリックするとその瞬間の日時が記入される VBAなど できませんか?

失敗の試案> M17のセルに式
=IF(L17="@",NOW(),)
L17に@を入力するとその日時が出ますが、これではシートが再計算するたびに日時が当然変更されます。
それを固定するため[値のみ貼り付け]をしてますが、
L17にボタンなどを埋め込みそれをクリックするか
直接M17をクリックして固定日時を表示する事出来ますか。
日時記入はM5:M50
空いている列は N O P です。

A 回答 (2件)

#1 さんの回答は、簡単で、私は良いと思いますが、



>直接M17をクリックして固定日時

クリックということに着目すると、以下のようなマクロになります。

入力するシートのシートタブを右クリックして、コードの表示をクリック
出てきた画面に以下を貼り付けます。

これは、書式を考慮していませんので、入力範囲に対しては、あらかじめ、書式を設定しておいてください。

'----------------------------------------------------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("M5:M50")) Is Nothing Then Exit Sub
 'M5:M50の範囲外は除外
 If Not IsEmpty(Target.Value) Then Exit Sub '上書きはしない
 Application.EnableEvents = False
 Target.Value = Format$(Now, "mm/dd hh:mm")
 Application.EnableEvents = True
End Sub
'----------------------------------------------------------
    • good
    • 0
この回答へのお礼

出来ました  気分うきうきです  感謝申し上げます。
L5に =IF(M5>0,"検査完了","")
としまして、目的達成です。
(シートタブ右クリックも知りませんでした)
ありがとうございました。

お礼日時:2005/06/18 08:55

VBAではないのですが、ショートカットキーを使ってみてはいかがですか?


『ctrl』+『;』・・・日付
『ctrl』+『:』・・・時刻
では、だめですか?
    • good
    • 0
この回答へのお礼

ご回答 ありがとうございます。
#2様のVBAと 目的に応じて 使分けたいと思います。感謝申し上げます。ありがとうございました。

お礼日時:2005/06/18 08:45

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