- ベストアンサー
Excelで、セルに'1'が入力されたら、そのセルに今日の日付を入れる
Excelで、セルに'1'が入力されたら、そのセルに今日の日付を入れる方法。 をしらべているのですが、分かりません。A1セルに =IF(A1="1",=TODAY(),"") と入力すると、循環参照でエラーになってしまいます。 どのようにすればよいのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
基本的に数式を入力してあるセルに値を入力すれば、当然のことですが数式はなくなってしまいます。 どのような目的で、わざわざ「1」と入力して今日の日付を表示させたいのでしょうか? また、数式で表示した今日の日付は、たとえば明日になると自動的に明日の日付が表示されてしまいます。 単に、その日の日付を簡便に入力したいだけなら、Ctrl+;のショートカットが実戦的です。 あまりお勧めできませんが、入力セルと表示セルを同じセルにして、入力値と別の値を入力させたいなら以下のようなイベントマクロを利用することになります。 たとえばA1セルに1を入力したときに今日の日付を入力するなら、シート名を右クリックして「コードの表示」から以下のコードを貼り付けて、A1セルに1と入力してみてください(このような場合でも、わざわざ「1」と入力するのではなく、他の列にあるデータが入力されたら、日付の列に自動的に日付を入力するようにするのが一般的ですが・・・)。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" And Target.Value = 1 Then Target.Value = Date End If End Sub
その他の回答 (2)
- KURUMITO
- ベストアンサー率42% (1835/4283)
A1セルに入力してA1セルに今日の日付を出すことを式を使って行うことはできません。式を入力しても'1'と入力することで入力した式は消えてしまいますね。次のようにすれば今日の日付が表示されますよ。 例えばA1セルでCtrlキーを押しながら ; のキーを押すことで今日の日付が表示されます。
お礼
回答ありがとうございます。 Ctrl;のショートカットで入力します。だいぶ楽になりました。 ありがとうございました。
- f_tekki
- ベストアンサー率19% (24/122)
A1セルに 1を入れて A1セルに今日の日付と言うわけには行きません A1に 1を入れて B2セルに今日の日付を出すのであれば B2セルに =IF(A1=1,TODAY(),"") です
お礼
回答ありがとうございました。 やはり、循環参照は無理なのですね。
お礼
回答ありがとうございます。 目的ですが、入力をすばやくするためでした。 Ctrl;のショートカットで入力します。 マクロも参考になりました。 ありがとうございました。