• 締切済み

エクセルで時刻を自動入力する方法

教えてください。 エクセルで、たとえばA1のセルに自分の名前を入力したときB1にそのときの時刻が入力される。5分後、A2に自分の名前を入力したときB2にその時の時刻が自動で入力される。ただしこの時A1の時刻はA2に自分の名前を入力したときのままで固定されている。この操作を100回くらい繰り返しても時刻は入力したときのまま。 上記内容はエクセルでどうやればできるのでしょうか?

みんなの回答

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.6

#5です。気がつくのが遅れてすみませんでした。 3行目の If (c.Column = 1) Then が変わったセルの列(Column)が1だったら(=A列だったら)という判定をしています。 あとの処理はA列の場合もD列の場合も同じなので、この条件を増やしてあげればOKですね。 3行目を  If (c.Column = 1) Or (c.Column = 3) Then に変えればC列でも同様になります。

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.5

使用方法がわからない場合は、Ctrl+:をお勧めします。 A列に入力があったときに右側(B列)に時刻表示をします。 Private Sub Worksheet_Change(ByVal Target As Range)  For Each c In Target   If (c.Column = 1) Then    If (c.Value = "") Then     c.Offset(0, 1).Value = ""    Else     c.Offset(0, 1).FormulaR1C1 = Time     c.Offset(0, 1).NumberFormat = "h:mm"    End If   End If  Next End Sub

t-saitou
質問者

補足

質問者です。 ありがとうございます。できました。 お手数ですがもうひとつ教えていただきたいのですが、上記の条件を守りつつさらに、C列に入力があったときにも右側(D列)に時刻表示ができるようなやり方はどうすればよいのでしょうか?(条件の追加)

  • suekun
  • ベストアンサー率25% (369/1454)
回答No.4

No.2です。 補足しておきます。 >これは希望の様な働きはせず、都度再計算されてしまう為に 固定は出来ません。 この部分は、例えばその場では上手く関数で時刻を拾えても 一度保存して開き直せば、その時の時間ですべて再計算されます。

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

VBAつまりマクロを使えば可能です。 それ以外の場合は、手動で Ctrlキーを押しながら : で現在時刻をスタンプですね。

  • suekun
  • ベストアンサー率25% (369/1454)
回答No.2

シート関数には時刻を表示する関数がありますが これは希望の様な働きはせず、都度再計算されてしまう為に 固定は出来ません。 記録の様に時刻を取得して残すなら、VBAしか方法はありませんが 質問の内容から推測すると、それほどプログラムに通じている 様には思えませんが・・・ まずは上書きマクロで、「Ctrl」を押しながら「:」を押して 値としての時刻を取得する事をお勧めします。

  • tequira
  • ベストアンサー率25% (3/12)
回答No.1

=IF(A1="","",NOW()) B1の表示形式は時刻 あまりひねりはないですが、こんなんじゃダメですか?