• ベストアンサー

DATE関数について

Excelの関数について質問させていただきます。 <やりたい事> 「対応完了予定日」という項目に入力された日付を過ぎると、別の「対応ステータス」という項目を自動的に「対応完了」に変更(入力)させるような関数を作成したいと思っています。 DATE関数やIF関数などを組み合わせれば出来そうな気がするのですが、調べてみたもののわかりませんでした。 お手数ですがわかる方教えていただければ幸いです。よろしくお願いします。

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

NO1です。 >いただいた関数を入れたセルでリストを変更してしまうと関数が消えてしまいます  ⇒エクセルは関数とデータ入力を共存できません。(エクセルの常識です)   3種類程度のステータスで表示条件が確定できるのであれば、全て数式での表示も可能と思います。   どうしても手入力と共存になる場合はマクロ(VBA)組込むになります。(難易度が高い)   この辺りをご検討の上、別質問をあげて下さい。

その他の回答 (3)

  • masnoske
  • ベストアンサー率35% (67/190)
回答No.4

「対応前」「対応中」が手入力なのに、自動的に「対応完了」になることが、そもそも間違っていませんか? たとえば、「対応前」または「対応中」なのに、期限を過ぎてしまったことが見て判るようにするのであれば、条件付き書式を使う方法もあります。 セルに表示させるのであれば、入力セルと関数は共存できませんので、関数は別のセルに入力するしかありません。

  • Turbo415
  • ベストアンサー率26% (2631/9774)
回答No.2

DATE関数じゃなくて、TODAY関数(今日を表す関数)と予定日を比較するだけで良いです。 今日との比較ですから、エクセルを開いた度に更新します。 対応完了予定日がA2で対応ステータスがB2だとすると、B2のセルに=IF(ISBLANK(A2),"",IF(A2<=TODAY(),"対応完了",""))として下さい。isblankを使わないと、A2に何も入っていないときに「対応完了」が出ますから。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

一例です。 別の「対応ステータス」という項目のセルに=IF(対応予定完了セル<TODAY(),"対応完了","")で如何でしょうか。

shinshin2000
質問者

補足

早速ありがとうございました<(_ _)>。 =IF(対応予定完了セル>TODAY(),"対応完了","")で「対応完了」の入力はできました。ただ実際は「対応ステータス」には「対応前」、「対応中」というステータスが元々入っており(リスト化しています)、空白セルではありません。リストは手動で選択するのですが、「対応完了」のみ自動で選択が切り替わるような動作にしたいと思っています。いただいた関数を入れたセルでリストを変更してしまうと関数が消えてしまいます。全然別の質問になってしまいますが、これはどうにかなるのでしょうか。

関連するQ&A

  • エクセルの関数で。

    エクセルで例えば 例えば セル A1        B1      C1       D1    E1        F1 状態      購入日    有効期限   超過   回収日     ステータス 発送      2013/01/28 2014/02/01  3日   2014/02/03   完了 上記のような項目が入っているエクセルブックがあり、 (1)D1にはB1の日付を入力するとC1に自動的に1年後の日付が入るように関数を設定 (2)またC1がTODAYを過ぎた場合、D1に何日超過しているかわかるように関数を入れています。 知りたいのはE1に日付が入った場合D1は自動的に日付が消えるようにする、そういった設定が出来るものでしょうか?手で消せばいいというのはごもっともなご意見ですが、数が多いと消しこみ忘れを防ぎたいので、可能ならそういった設定をしたいのです。 また、F1にステータスが完了という文字が入った場合、その行をグレーアウトさせる書式設定の方法もご存知であれば是非教えていただけないでしょうか。宜しくお願いします。

  • DATE関数とTEXT関数で作成しています。

    DATE関数とTEXT関数で作成しています。 みんなが使うので、 セルをDELETEしますと、消えてしますので、VBAで作成したいと思います。 A1セルに年、B1セルに月、C1セルに日を入力しております。 D1にDATE(A1,B1,C1)、E1にはIF(B1=””,””,(TEXT(DATE(A1,B1,C1))を入力してます。 これをVBAで作成したいのですが、 sub 日付() formura 日付(A1,B1,C1)ここからがわかりません。 end sub よろしくお願いします。

  • ExcelのDate関数で=DATE(2008,2,30)と打つと2008/3/1になってしまう

    今エクセルで勤務表を作成しています。日付の欄は31日分あり、 年と月を変更することで、項目欄に日付が入力されます。 たとえば31日ある月は31項目埋められ、30日ある月は30日まで項目が埋まり、後の1つは空白となります。 土日はグレーに塗りつぶすようになっていて、条件付書式で =TEXT(DATE(年,月,30),"aaa")="土"の時は塗りつぶすというような処理をしています。 ここで2月について問題が発生していて、2月は29日しかないので30、31の項目は空白なのですが、条件付書式が 有効になってしまい(DATE(2008,2,30)は2008/3/1になる)、 空白なのに欄に色だけが塗りつぶされてしまっています。 何かいい解決策はないでしょうか。 何かアイデアがある方がいらっしゃいましたらぜひご教授いただきたく、よろしくお願いいたします。

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

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

  • ACCESSのDate関数で

    ACCESS2000を使っています。 クエリーに「提出日:Date()」として「提出日」に自動的に本日の日付が入るように設定しています。 けれどDate関数の特性として明日になれば明日の日付に自動的に更新されてしまいます。 これをどうにかして「自動的に本日の日付が入るがそのままその日付を更新しない」 という設定にすることはできないでしょうか? よろしくお願いします。

  • 日付の設定の関数を教えてください

    エクセル2000で、 今日の日付を自動表示させ、それに対応させて 毎月銀行から引き落とされる支払日を自動的に表示させたいのですが、 細かい条件は、毎月15日締め、翌月25日払いです。 =IF(DAY(B1)<=15,○○,○○)といったようなIF関数を使えばいいのかな、 というところまでは考えたのですが、 「翌月の25日」というのを関数でどのように表示させたらいいのかわかりません。 また、16日ならば翌々月の25日となるわけなのでが、 どのようにしたらいいのでしょう??? よろしくお願いします。

  • DATE関数 4月31日などのありえない日付について

    エクセル初心者です。よろしくお願いします。 「DATE」関数で。2005年4月31日など ありえない日付を入力しても「38473」と シリアル値が帰ってきます。 しかし、別のシートで同じことをすると、 「ありえない日付」をエクセルが判断して、 シリアル値が帰ってこないようになっていました。 この差がなんなのか、よくわかりません。 数字が帰ってこないシートは上級者からのもらいもの です。ためしに、そのシートの数式をすべてコピーして みましたが、コピーされた側の空白セルで 「DATE」関数を打ち込むと、また普通に ありえない数字が帰ってきました。 まるで、上級者の人が作った原本シートだけ 「ありえない日付のシリアルは返さない」 設定がされているように思えました。 ただし、それは関数によるものではないと思います。 関数ごと丸々コピーした別のシートでは、 同じ結果が返ってこなかったからです。 どなたか、解答、アドバイスをお願いします。

  • SUM関数について

    エクセルの関数について質問です。 振込手数料の計算が面倒な為 IF(セル番号="","",IF(セル番号<=30000,"210",IF(セル番号>=30000,"315")))(例) という式を入力してあります。 そして小計にて手数料の合計を出そうとSUM関数を入力したところ 計算が出来ませんでした。 この振込手数料の合計が出せるような関数はどんな式になりますか? お分かりになる方いらっしゃいましたら 宜しくお願い申し上げます。

  • 関数を使った月計の出し方

    エクセルを使ってカルチャースクールの参加者名簿を作成しています。 シート1の内容は講習日の日付(TODAY()+1)と名簿です。 いつも講習前日に作成し、参加予定者には○を、欠席予定者には×を入力し、COUNTIF関数で出席者と欠席者の合計人数を出しています。 シート2の内容は、1ヶ月の参加者総数(日付ごとに)です。 シート1は毎日更新し、上書き保存しています。 (データ保存でなく、プリントアウトをして保存してるんです) シート2にはいつも手打ちで入力するのですが、関数を使って自動的に(シート2には入力しなくて良い方法で)シート1の出席者と欠席者の合計人数を入力する事は出来るのでしょうか。 Today関数とIF関数を使ってシート1の合計人数をシート2へ自動入力する方法を考えたのですが、この方法だと日付が更新される毎にシート2のデータが消えてしまいます。 コピーして値を貼り付ける事も出来るのですが、効率の良い方法は無いかと思い質問させて頂きました。 わかりづらい説明で申し訳ありませんが宜しくお願いします。

  • エクセルの関数(IF関数?)について教えてください

    excelの関数についてわからず、困っています。 どのような関数を入れればよいのか、ご教授お願いいたします。   sheet1に下記のような表があり、 No 項目名 日付 1 りんご 11/1 2 バナナ  3 いちご  sheet2に No 項目名 日付 7 バナナ  8 りんご  9 パイン  という表があるとします。 sheet1に日付を入力した時に(りんごの右の11/1) sheet1の項目名と一致するsheet2の項目名の右のセルに同じ日付が入るようにさせたいです。 どのような関数を入れたらよいでしょうか。   よろしくお願いいたします。  

専門家に質問してみよう