dポイントプレゼントキャンペーン実施中!

会社の業務で工事の進捗管理をしています。顧客の数がそれなりに多いですので、エクセル表上で色分け作業をしたいのですが、たとえばエクセルでは次のような事は出来るのでしょうか?

・翌日に迫った工事のセルを特定の色で自動的にマーキングさせる。
・受注から一定期間を過ぎてしまった工事のセルを特定の色で自動的に
マーキングさせ、なおかつ点滅(警告的な意味合い)させる。
※「工事のセル」はお客様名の前に日付のセルがあるので、そこだけを動作させたいです。

多方面の書籍を見てみましたが、PC使用歴はそれなりに長いものの、エクセルは初心者であり、応用力がないために思考錯誤しながらの毎日です。上記の方法や、参考になるサイトがありましたらアドバイスをお願いします。

A 回答 (4件)

>なおかつ点滅(警告的な意味合い)させる


エクセルは表計算ソフトで、プレゼンソフトでないので、こういう分野は十分機能が備わっていません。ワードで、やっと書式ーフォントーアニメーションがあるぐらいです。
ーー
文字が動くことを要求した質問
http://okwave.jp/qa3149971.html
にも書きましたが、VBAなどが必要で、それも相当上級のスキルがいるようです。他の2人の回答もVBA関連のようです。
Sub test02()
Cells(1, "A").Font.ColorIndex = 3
For i = 1 To 1000
Call Wait(0.5)
If Cells(1, "A").Font.ColorIndex = 3 Then
Cells(1, "A").Font.ColorIndex = 0
Else
Cells(1, "A").Font.ColorIndex = 3
End If
Next i
End Sub
Sub Wait(tm As Single) 'tm秒間経過後に戻るサブルーチン
Dim ts
ts = Timer
Do While Timer < ts + tm
DoEvents
Loop
End Sub
で、点滅しますが、この程度では、まだ解決すべき課題が、沢山あります。(全セル対象に点滅するべきセルを相性にする。点滅をやめるなど)。その後、上記質問には、操作による回答なども出ていないので、操作や設定ではできないでしょう。
ーーー
>翌日に迫った工事のセルーーA
>受注から一定期間を過ぎてしまった工事のセルーーB
これらはV、日1回程度更新すればよいならVBAで、前記点滅とともに
処理する手はあると思います。
普通は、この手の問題は条件付き書式で「式が」で処理します。
Aを第1条件、Bを第2条件にすればよいと思います。
式が、は=A1>TODAY() <--A
=A1>TODAY()+30 <--B
で、+30の部分は、定数値かセルの値の日数か、関数で出してください。
    • good
    • 0
この回答へのお礼

大変遅くなりましたが、参考になる回答を多数いただきありがとうございました。皆様にお礼を申し上げます。皆様の回答を参考にさせていただきながら、一生懸命にやってみたのですが…すみません、途中で挫折してしまいました。実はエクセルに求める機能や操作が、(業務が少し変更になった為)質問を投稿した時と若干変わってきた…というのもあります。しかし、いずれにせよPC使用歴は長いものの、ことエクセルに関してはド素人の私には難しかったようです。
これからもエクセルを使いながら業務を進めていくことには変わりがありませんので、また自分で解決できないどうしても困難な問題が出ましたら、またその時は質問をさせていただきます。今回は本当にありがとうございました。

お礼日時:2007/09/05 23:16

ゴメンナサイ。

人のことは言えませんね。

誤:
=AND(A1<(TODAY()-30),D1=FALSE)

正:
=AND(C1<(TODAY()-30),D1=FALSE)
    • good
    • 0
この回答へのお礼

とても参考になる回答ありがとうございました(訂正ありがとうございます)。まとめてではありますが、No.2の方の欄にお礼を述べさせていただきました。またご質問することもあろうかと思いますので、その時にはよろしくお願いします。

お礼日時:2007/09/05 23:18

なんだか翌日という部分が抜けていたり、等号のの向きが逆のような...


工事日がA1、受注日がC1にあるとして、色づけするのは工事日のセル(A1)だけとすれば、
A1セルの条件付書式に
工事日が翌日のものを色づけ..........=A1=(TODAY()+1)
受注日から30日過ぎたものを色づけ....=C1<TODAY()-30
上記で、もし工事済のものは除きたいなら、どこかの列に工事済かどうかを
入力する項目を設け、入力規則で「True」か「False」を選択出来るようにしておき(仮にD1とします)
=AND(A1<(TODAY()-30),D1=FALSE)

なお、
「=A1>TODAY()」では翌日より先の全ての日付が該当してしまいます。
「=A1>=TODAY()-1」では昨日以降の全ての日付が該当してしまいます。
「=A1>TODAY()+30」では31日後以降の全ての日付が該当してしまいます。
    • good
    • 0
この回答へのお礼

とても参考になる回答ありがとうございました。まとめてではありますが、No.2の方の欄にお礼を述べさせていただきました。またご質問することもあろうかと思いますので、その時にはよろしくお願いします。

お礼日時:2007/09/05 23:06

エクセルで条件によりセルの背景色を変えるには条件付き書式を使用します



A1に工事日(2007/7/10のような日付形式で入力し、セルの書式で表示形式を変更したもの)が入力されていて、B1セルの背景色を変える例で説明します
 条件
  工事日の前日になったらB1を黄色にする(当日も含む)
  工事日が当日を過ぎたらB1を赤色にする

B1セルを選択し、「書式」→「条件付き書式」を選択し、「セルの値が」を「数式が」に変更し、数式に
=A1>TODAY()
と入力し、「書式ボタン」→「パターンタブ」で背景色を「赤」にします

次に「追加ボタン」で二番目の条件を開き、数式に
 =A1>=TODAY()-1
を入力し、「書式」→「パターン」で背景色を「黄」にして「OK」です
A1に色々な日付を入れて試して見てください

条件付き書式を他のセルにコピーする場合は「編集」→「形式を選択して貼り付け」→「書式」で行います。

なお点滅は難しいと思ってください。
例えば条件付き書式を利用して時刻の「秒」によって背景色を変える方法がありますが、NOW関数を1秒間隔で最新表示にするためにはVBAでタイマーを用いる必要があります。無論できないことではありませんが、あまり実用的ではないと思います。
    • good
    • 0
この回答へのお礼

とても参考になる回答ありがとうございました。まとめてではありますが、No.2の方の欄にお礼を述べさせていただきました。またご質問することもあろうかと思いますので、その時にはよろしくお願いします。

お礼日時:2007/09/05 23:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!