- ベストアンサー
Excel2000でセルに日付を入れたい方法
- Excel2000でセルに日付を入れる方法を教えてください。05-06-17にQNo 1455706でセルをクリックして日時を入れる方法を試しましたが、一つのセルに日付と時刻を入れるとつながってしまいます。
- Excel2000で日付と時刻を入れる方法を教えてください。05-06-17にQNo 1455706でセルをクリックして日時を入れる方法を試しましたが、一つのセルに両方を入れるとつながってしまいます。
- Excel2000のセルに日付を入れる方法を教えてください。05-06-17にQNo 1455706でセルをクリックして日時を入れる方法を試しましたが、一つのセルに日付と時刻を入れるとつながってしまいます。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>K5をクリックしただけでL5に日時が表示され、EnterキーでカーソルがK6に移動するので 先の Worksheet_SelectionChange のイベントは削除(もしくは改名、コメントアウト)して機能を停止してありますか? 下記は、範囲選択等で複数セルを選択した場合、動作をキャンセルします。 また、値を削除した場合、日付も消します。 Private Sub Worksheet_Change(ByVal Target As Range) '複数セルが選択された場合、動作をキャンセル If Target.Count <> 1 Then Exit Sub If Intersect(Target, Range("K4:K1000")) Is Nothing Then Exit Sub 'L4:L1000"の範囲外は除外 Application.EnableEvents = False If Target.Value <> "" Then If IsDate(Target.Offset(, 1).Value) Then GoTo EXIT_LABEL '日付が記入済の場合は実行しない Target.Offset(, 1).Value = Format$(Now, "mm/dd AM/PM hh:mm") Else 'セルを空白にした場合、日付を削除 Target.Offset(, 1).Value = "" End If EXIT_LABEL: Application.EnableEvents = True End Sub
その他の回答 (2)
- hana-hana3
- ベストアンサー率31% (4940/15541)
>ご案内の通り出来ましたが、不明快質問で目的とズレマシタ。 こちらもイベントの確認をしていませんでした。 下記のようにしてください。 Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("K4:K1000")) Is Nothing Then Exit Sub 'L4:L1000"の範囲外は除外 If IsDate(Target.Offset(, 1).Value) Then Exit Sub '日付が記入済の場合は実行しない Application.EnableEvents = False Target.Offset(, 1).Value = Format$(Now, "mm/dd AM/PM hh:mm") Application.EnableEvents = True End Sub 数量の修正をした場合に日付(修正日)を記入をしたい場合、2つ目のif文をコメントにしてください。
補足
お世話様で恐縮ですが、前回と同じです。 K5をクリックしただけでL5に日時が表示され、Enterキーでカーソルが K6に移動するので L6にも日時が表示 なお派生的な問題ですが、未入力時に K列を含む範囲(たとえばM10からK5までを選択してDeleteキーすると) LMN列に日時が表示となります。 K5に20と入力でL5に日時としたいのです。 コメント文にするのは文頭に;入力ですか?
- hana-hana3
- ベストアンサー率31% (4940/15541)
>、一つのセルに両方を入れると2005/7/268:34の様につながってしまいます 『ctrl』+『;』、「スペース(半角)」、『ctrl』+『:』と打ってください。 >K列(K4:K1000)に入荷個数の数値を入れたときL列(L4:L1000)のセルに表示 >Intersect(Target, Range("L4:L1000")) Intersect(Target, Range("K4:K1000")) >Target.Value = Format$(Now, "mm/dd AM/PM hh:mm") Target.Offset(,1).Value = Format$(Now, "mm/dd AM/PM hh:mm")
補足
ありがとうございました。 ご案内の通り出来ましたが、不明快質問で目的とズレマシタ。 今セル選択だけで日時がでます。これを K列に数値を入力したらL列に日時を固定表示したいのです。 お助け戴ければ幸いです。 K列=商品受領員数 L列=受領日時
お礼
出来ました!! ありがとうございました。 単数値を消すと日時も消え 複数の数値を選択削除では 日時が残っていて 再入力数値に日時が変化しない点を気に入っております。 入力ミスを後日修正した時良いと感じました。 御面倒をおかけしました。心より感謝申し上げます。