• ベストアンサー

自動日付入力方法

エクセルで A列1行に「n」と入れれば、 B列1行に今日の日付「Ctrl+;」を表示させるようにしたいのですが どうすればいいでしょうか? A3に入れれば、B3 A6に入れれば、B6 です。 「n」は人の名前が10種類くらい入ります。 よろしくお願いします。

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

  • ベストアンサー
  • NCU
  • ベストアンサー率10% (32/318)
回答No.4

とりあえず。 Private Sub Worksheet_Change(ByVal Target As Range)   Set Target = Intersect(Target, Columns("A:A"))   If Target Is Nothing Then Exit Sub   Dim r As Range   For Each r In Target     If r.Value = "" Then       r.Offset(, 1).ClearContents     Else       r.Offset(, 1).Value = Date     End If   Next End Sub

okaneokane
質問者

お礼

ご回答ありがとうございます。 マクロを試してみます。

その他の回答 (3)

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

A列に名前(文字列)が入るとB列に今日の日付ですか? マクロ(Worksheet_Change)ならできますが... 下記のコードを、シート見出しを右クリックして「コードの表示」で出てくる場所に貼り付けて確認してください。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then '入力セルがA列の場合処理を実行 If IsNumeric(Target) Then Exit Sub '入力値が数値の場合、処理を中止 Target.Offset(0, 1) = Date '右隣(B列)に今日の日付をセット End If End Sub

okaneokane
質問者

お礼

ご回答ありがとうございます。 マクロを試してみます。

noname#187541
noname#187541
回答No.2

こんにちは。 Excelの一般機能で自動で日付を入力するには =TODAY() とするしかないです。 ところがこれでは、日付が変われば当然変わってしまいます。 「Ctrl+;」は日付を文字列で手入力するショートカットキーで変化あはしません。 ですので、変化しても良いのであれば =TODAY() で良いでしょうが、そうでなければマクロを使うしかないと思います。

okaneokane
質問者

補足

ご回答ありがとうございます。 すいません。間違えました。 A列に入るのは、文字列の数字で、 隣のB列にA列に数字を入れた時の日付けを自動入力したいのです。 なので、日付がかわっていいんです。 ご回答いただいた「 =TODAY()」は どういう風に使えばいいんでしょうか? カッコに何をいれればいいんでしょうか? よろしくお願いします。

回答No.1

B1の計算式 =if($A1="n",today(),0) B1の書式設定で、数値表示方法を「#,###」にすれば、0は表示されない。

okaneokane
質問者

お礼

今試してみたんですが 使い方がよくわかりませんでした。 それで、質問を間違えたのですが、 A列に入るのは、文字列の数字で、 隣のB列にA列に数字を入れた時の日付けを自動入力したいのです。 よろしくお願いします。

関連するQ&A

  • エクセルでの自動日付入力

    エクセルでこんなことできますか? B列以降のどれかのセルに変更を加えて(セル内に文字入力、セル内の文字削除)、保存した後閉じます。 次回そのファイルを開いたとき変更したセルのある行の A列に保存した日付を表示させたいです。 「この行がいつ変更されたか」を知りたいのです。 わかりにくくてすみません。 マクロは初心者です。(たぶんマクロでないと無理?) よろしくお願いします。

  • Excelで日付と時間の自動入力

    教えてください。 エクセルで表を作っているのですが、 D列に文字を入力すると、 A列に入力した日付 B列に入力した時間 を「自動で」表示させたいのですが…マクロやVBAなどでできますでしょうか? できれば、D列の文字を消すと日付と時間も消えるようにしたいです。 初心者で申し訳ないのですが、よろしくお願いします。

  • 予定日までの日付までを自動入力するには?

    Excelで予定日までの日付を表に自動的に入力されるようにするには、どうしたら良いでしょうか? 例・ 今日の日付を「4月15日」とします。 A1 に予定日を入力とします。    A1 4月18日 ←TODAY()+3 で指定。プラスの日付は常に変更される。(+2,+10など)    B1 4月15日 ←今日の日付が入る。    B2 4月16日 ←以下、 A1 の日付まで続く。    B3 4月17日    B4 4月18日    B5  月 日 ←A1を超えると、数字を除いた「 月 日」の表示がされる。    B6  月 日    :    : A1で指定した日付が3日後なら、今日から4日間の日付。10日後なら、今日から11日間の日付という形で自動で入力されるようにしたいのです。 A1 のTODAY()+後の数のみの変更で、入力できたらと思っています。 ご協力、お願いします。

  • エクセルで自動で日付と時間を入れることはできますか?

    こんにちは、今現在  A列に 日付 B列に 日時 C列に管理番号を入力しています。 Ctrl+;とCtrl+:を使って 日付と日時を入力しているのですが C列に管理番号を入力したらA列とB列に自動で入力される マクロもしくはVBAは可能でしょうか? ご存知の方いらっしゃいましたら、ご教示ください。 m__m

  • Excel:セルに入力されている日付の、半年後の日付を自動表示させたい

    誰か教えてください。 A列のセルに「2004/3/4」という日付が入っていたとします。 A列の日付を参照して、B列に「半年後」、C列に「16ヶ月後」という日付を自動表示させたいのですが、そういう事って出来ますか? 出来るとしたらどんな関数を書けばいいのでしょう? 教えてください!

  • エクセルの日付機能

    エクセルの日付機能に関する質問です。 あるワークシートのA列に日、B列に月、C列に年が入力されています。これらの日付を行ごとに結合して、D列にdd/mm/yyという形式で表示させたいと考えています。 先ほど、D2に[=A2&"/"&B2&"/"&C2]という計算式を入力し、D列を右クリックして[セルの書式設定]→[表示設定]→[ユーザー定義]で[種類]欄に[dd/mm/yy]と入力しましたが、D2は日付として認識されず、ただの文字列として認識されているようです。 統合された文字列が日付として認識される良い方法を教えていただけないでしょうか?よろしくお願いします。

  • Excelで日付を入力したら締日を表示させる

    Excelで経費の支払いの表を作ろうとしています。 A列のセルに日付を入力し、 A列に入力した日付が1日~15日までなら B列のセルにその月の最終日の日付を 16日~31日までなら B列に翌月の15日と自動で表示されるようにするには どうすればいいのでしょうか? 詳しい方、教えてください。 ちなみに使用しているExcel2010です。

  • エクセルでYESと入力したら日付が自動表示

    A列に「YES」と入力されたらB列にその日の日付が自動で表示されるようにしたいです。 日付はYESと更新した日になっていてほしい(つまり値になっててほしい)です。 簡単なことなのかもしれませんが、全然できないので、お教えください!!

  • エクセルでの、日付の自動入力について

    エクセルで、週間の業務日報を作ろうと思っています。 そこでなのですが、 B列のセルに、業務内容(文字列)を入力すると、 自動的に、隣のA列のセルに、「日付」が入力されるようにしたいのですが、 どうすれば良いでしょうか…。 ※また、翌日そのファイルを開いた際には、  前日の日付は「そのままの状態(前日の日付のまま)」  になっているようにしたいのですが… <完成イメージ> 2/1 事務処理 1時間 2/1 PC設定 30分 2/2 事務処理 2時間 2/2 ミーティング 1時間 といった感じで、作りたいと思っています。 アドバイスを頂けると助かります。 よろしくお願い致します。m(_ _)m

  • 今日の日付が入った行のデータを取得するマクロ

    エクセルで別のブックに入っているデータを今日の日付が入っている行にコピーする、あるいはその行から貼り付けるマクロを教えてください。 具体的には例えば、 1)日付が順番にBook1 A列に縦に並んでいます。 Book 2にあるA1:D1のデータをBook1のA列にある本日の日付の横、例えばA10にあるとすればB10:E10にコピー・貼り付けしたい。 2)同様に日付が順番にA列に縦に並んでいて、本日の日付がA10にあり、B10:E10のデータをそのひとつ下のB11:E11にコピー・貼り付けしたい。 宜しくお願いいたします。

専門家に質問してみよう