- ベストアンサー
EXCELで自動で色わけ、ソート機能について
たとえば、A列に物件名を入力し、その後、B列に完了(これは入力規制にしますが)と入れば、自動的に該当する行のA、B列のセル全体が指定した色に変わるというやり方。ちなみに、完了だけではなく5種類ぐらいに色分けするつもりです。 次にC列に○○、××、△△などのように指定した文字に対して、表がソートされる機能。たとえば、○○に対しての物件一覧に自動的に切り替わる方法です。よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
A列の内容は色づけに関係ないと推察します。B列に入力された進捗状況によってA,B列に背景色を着けるという要望でしょうか。 一般には#01さんの回答にある条件付き書式を用います(A,B列共に着色可能です)。ただし一つのセルに設定可能な条件は3つまでですので進捗状態が5つもあると、条件付き書式では対応ができません。VBAが必要になります。 以下のサンプルマクロはB列に入力された内容によってA,B列のセルを着色するものです。入力シートのモジュールシートにペーストしてみてください。(Alt+F11でVBE画面を起動し、左側にある入力シート名をダブルクリックしたときに表示される画面です) Private Sub Worksheet_Change(ByVal Target As Range) With Target If .Column = 2 Then '処理対象をB列に限定 Select Case .Value Case "完了" Range(Cells(.Row, 1), Cells(.Row, 2)).Interior.ColorIndex = 3 Case "中断" Range(Cells(.Row, 1), Cells(.Row, 2)).Interior.ColorIndex = 5 Case "未着手" Range(Cells(.Row, 1), Cells(.Row, 2)).Interior.ColorIndex = 7 Case "作業待ち" Range(Cells(.Row, 1), Cells(.Row, 2)).Interior.ColorIndex = 6 Case "作業中" Range(Cells(.Row, 1), Cells(.Row, 2)).Interior.ColorIndex = 4 Case Else Range(Cells(.Row, 1), Cells(.Row, 2)).Interior.ColorIndex = 0 End Select End If End With End Sub また後半の「、○○に対しての物件一覧に自動的に切り替わる方法」はオートフィルタを使用するのが良いと思います。オートフィルタはC列全体を選択した状態で「データ」→「オートフィルタ」で設定します。 なおカラーインデックス番号は下記URLを参照下さい
その他の回答 (2)
- NCU
- ベストアンサー率10% (32/318)
文章をお読みして、ピンとこないのです。 ~というやり方。 ~される機能。 で、これらをどうされたいのですか?
- pyara
- ベストアンサー率30% (24/78)
「条件付書式」を使います。(「書式」メニューにあります) 指定したセルがある条件と一致した場合、そのセルを希望の色で塗りつぶすことが可能です。ご質問のような場合、A列のセルは、ある条件を「下隣のセルに”完了”という文字列があれば、このセルを○色に塗る」というように指定します。 ただ、同様にB列も同じ色で塗りつぶせればよいのですが、物件名が複数であれば、B列と同色で揃えていくことは私の知る限り難しいように思います。 条件付けたセルは、書式のコピーを右側にずーっと貼り付けていけば、列全体がその書式になります。
補足
返事おくれてすみません。 すみませんが、実際のシートでは、A列からAS列までで、 ある行のAS列に入力されると、その行のAからAS列まで 着色するというものです。よければ、それで教えてもらえませんか? よろしくお願いします。