• ベストアンサー

Excelでの質問です

WinXPでExcel2003を使用しています。 今、シート(入力エリア)上に、 氏名(A列) 処理日(B列)   |     |   |     | 尚、上記入力項目は、約50個程あります。 処理日には、 =IF(A○="","",IF(A○>0,TODAY()))の計算式により、 氏名が入力された時に、本日の日付が入力されるようにしています。 (氏名が入力される日付はまちまちです。) この処理日について、翌日以降、変更されないようにする方法についてご教授下さい。  

  • baura
  • お礼率89% (172/192)

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

  • ベストアンサー
noname#62235
noname#62235
回答No.4

A列に値が書き込まれたら、B列に日付を書き込むようなマクロを作成するのがいいと思います。 ワークシートのマクロに、以下のようなマクロを追加します。 Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub Else Target.Offset(0, 1) = Date End If End Sub

baura
質問者

お礼

どうもありがとうございました。 参考にさせていただき、自動化する方向で再度考えてみます。

その他の回答 (3)

  • hirorin00
  • ベストアンサー率50% (446/884)
回答No.3

はじめまして 根本解決ではありませんが… 「CTRL+;」で日付を、「CTRL+:」で時間を入力できます。 B列にはこれで打ち込んでみてはいかがでしょうか?

baura
質問者

お礼

どうもありがとうございました。 自動化する方向で再度考えてみます。

回答No.2

参考URLはお役に立てますでしょうか?

参考URL:
http://oshiete1.goo.ne.jp/qa2316518.html
baura
質問者

お礼

どうもありがとうございました。 参考にさせていただき、自動化する方向で再度考えてみます。

  • michi_001
  • ベストアンサー率32% (21/65)
回答No.1

TODAY()の関数が入っている以上、次の日になれば、次の日が表示されてしまいます。 マクロやVBAなら出来るようなことを聞いたことはありますが、私自身よくわからないので、手作業でするとなると、以下のようになってしまうと思います。 まず、氏名を入力する→本日の日付が表示される。  表示された日付のセルを右クリック→コピー  同じセルにて再度右クリック→形式を選択して貼り付け→値 これで、日付がダイレクト入力されたことになりますので、以降自動的に日付が変わってしまうことはありません。 手作業なので、面倒とは思いますが、1回で入力する氏名が多くなさそうなので、この方法を提案してみました。

baura
質問者

お礼

どうもありがとうございました。 自動化する方向で再度考えてみます。

関連するQ&A

  • エクセルの関数でどうしても解らないことがあります。

    エクセルの関数でどうしても解らないことがあります。 例えば   A   B   C  D  E 1 2 3 4 5 このセルでA列に文字を入力した時、E列にその入力した日を表示させる関数で困っています。今は=+IF(A1="","",TODAY())をE1に入力しているのですが、翌日になると1日プラスされた日付に変更されています。 ツールの計算方法を自動にしているのですが、同じシート内に他の計算式を入力しているので手動に変更できません。翌日になっても日付が変更されない方法は無いでしょうか?詳しい方宜しく願います。

  • エクセル関数で

    初歩的な質問で 申し訳ないですが。 シート 3枚に データーを入力して その計を 別シートに表示したいのですが、その時表示したいシートは日付で管理したいのです。  IF(TODAY()=A3,シート1!$O$2+シート2!$O$2+シート3!$O$2,IF(A3<100000,"")) の数式を立てたのですが、 この数式だと日付が変わるとそのセルは 表示が出なくなります。日付が変わっても そのシートの計算された数字はそのまま残るようにするにはどうしたら良いでしょうか? 無理なのかな? 教えて下さい。 A3以降A列には毎日の日付を入力してあります。    

  • excelで今日以降の日付のセルの個数を抽出

    excel関数で列の中に出荷日が記載されています。この列の本日以降の日付の入っているセルの個数を抽出したい。 COUTIF(A1:A20,>2012/4/9)だと6と正確に抽出するのにCOUNTIF(A:A20>=2012/4/9)だと0と表示されてしまう。 実際は、その日その日で確認するためCOUNTIF(A1:A20,>”=TODAY”)といううように日付をいちいち入力しなくても良い様にしたいが、すべて「0」と出てしまう。 どこが悪いのでしょうか。

  • エクセルの再計算

    再計算で処理スピードがかなり遅くなってしまいました。 シート1のA列に顧客番号B列に顧客氏名を入力しています。現在58000名が入力されております。これからも月に100名程度増加していきます。 シート2にシート1を反映させています。 シート2のA列に今日の日付を入力しB列に顧客番号を打ち込むとC列にシート1の氏名が表示されます。 しかし数が多いもので番号を打ち込みエンターキーを押すと再計算が始まり能率が上がりません。 このような状態を回避する方法がありましたなら教えていただきたいのですが。

  • Excelでの質問です。

    こんな事が出来るのか?出来ないのかさえ判らない者ですが・・・・     シート2のA列と、シート3のA列に上からランダム(上からは順番です、シート2と、シート3の順序はバラバラです)に日付を入力 この、それぞれに入力した日付をシート1の、A列の上から順番(入力順)に反映したい。     尚、シート2、シート3共、B列、C列、D列に日付の関連項目を入力し、これもシート1のB列、C列、D列に反映したい。    Excelの先達の方々、どうかよろしくご教授下さい。

  • エクセルのマクロについて質問です。

    エクセルのマクロについて質問です。 マクロを発動した時に、あるセルに入力してある数値を参照し、その行のX列目に数値を張り付けるものを作成しようとしています。 例えば シート「1」の A1に日付を入力 B1にある数字を入力 シート「2」の A列にA1→1~A31→31の日付が入力されている時 マクロ発動時にシート「1」A1の日付と一致する シート「2」のB列にシート「1」のB1の値を貼り付け ↑たとえばシート「1」のA1が1日でB1が500だった場合 シート「2」の1日(A1)と同じ行でB列(B1に500を 貼り付けるものです。 かなり下手な説明だと自覚しておりますが、解読できる方 どうかご教授ねがいます。

  • EXCELで他のシートのデーターを反映させるには

    office2000のEXCELです。 仮に「シート1」と「シート3」があります、「シート1」にはA列(氏名)B列(年齢)とします、 「シート3」は会員名簿で氏名(C列)と年齢(D列)が書かれています(60件位)。  「シート1」のA列(氏名)をクリックすると「シート3}の名簿が表示されて氏名(c列)をクリックする事により「シート1」のA列(氏名)B列(年齢)が入力できるような仕組みは可能でしょうか。   リスト入力・コンボボックス等チャレンジしてみましたが何れもうまくいきませんでした。 初心者にはむりでしょうか? 宜しくお願いいたします。

  • エクセルVBAの書き方で教えてください。

    エクセルで、 「A列にデータを入力した日付をB列に自動で入れる」 (A列のデータを消したときは、B列のデータも消える)ということをするのに、 他の質問を参考にして、 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 1 Then   '対象の列が1列目(A列)なら If Target.Value <> "" Then   '入力された値がブランクでなければ Target.Offset(0, 1).Value = Date   '0行ずれた(同じ行)の1列右隣に日付を入れる Else       'そうでなければ(Deleteキーで消されたら) Target.Offset(0, 1).Value = ""   '同行右隣をブランクすなわち""として消す End If      '入力された値の処理終り End If      '1列目(A列)の処理終り、従ってB列以降はチェックしない End Sub と、入力して、うまく動きました。 ところが、「A列に入力」→「B列に自動で日付」だけでなく、 「D列に入力」→「E列に自動で日付」 「H列に入力」→「I列に自動で日付」と、1つのエクセルシートの中で いくつかの同じ条件のことを繰り返そうと思うとうまくいきません。 この場合、どのようにVBAを記入したら良いのか、教えてください。 よろしくお願いします。

  • エクセルの関数について

    DATE関数について教えてください。 エクセルで、シート1のA1セルにTODAY関数で本日の日付が入るようにセットし、 A2にVLOOKでシート2よりコメントを引き込むように設定しています。 シート2はA列に1月1日から12月31日まで順に並べ、B列にコメントを入れた 表になっています。 ここで質問なのですが、A1やシート2の日付はすべて2008年が入ってしまい、 A1セルが2009年になってしまうと、シート2から引き込まなくなってしまいます。 これを回避するために、A1とシート2ともに年を省き 月日のみで永続的に引き込みが出来るようにしたいのですが、 DATE関数などを利用して可能でしょうか? よろしくお願いします。

  • エクセルのカウントダウンでアラートを表示させる方法

    エクセルのA列に目標の日付,B列に経過(完了とか途中とか),C列に以下の関数を入れて、目標日までの日数をカウントダウンしています。 =IF(A3>TODAY(),"あと"&DATEDIF(TODAY(),A3,"D")&"日",IF(A3=TODAY(),"今日が期限",IF(A3<TODAY(),DATEDIF(A3,TODAY(),"D")&"日過ぎ"))) この式に追加で、B列が完了になっているものは「○日過ぎを表示しない」という設定をしたいのですが、どのような関数を入れたらいいのでしょうか? 教えてください!!!

専門家に質問してみよう