• ベストアンサー

並べ替えについて

Excelで色ごとにデータの並べ替えをしたいのでが、そういった方法はありますか?

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

  • ベストアンサー
  • jo-zen
  • ベストアンサー率42% (848/1995)
回答No.1

直接行うのは無理だと思います。 (1)VBAを使う方法 → やれなくはないかと思いますが、結局(2)の方法を自動化しているのにすぎない気がします。 (2)色番号を返す関数を使って、作業セルに色番号を表示し、それをキーとして並び替える。色番号を返す関数については、以下のURLを参考にしてみてください。   http://www.katch.ne.jp/~kiyopon/situmon/    ※下部にある【ファイルのダウンロード】はこちら    からアドインをダウンロードしてアドインを組み込む必要があります

bony_1972
質問者

お礼

この度は、ありがとうございました。 初心者なもので、もっと勉強します。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

この質問が時々出るが、基本が判っていない人の質問である。 http://okwave.jp/qa327295.html コンピュター処理の基本とエクセルの現状を良く理解しておくこと。 (1)ソートは(プログラムが裏で)「値」(エクセルの場合はセルの値)に基づいて行うものであること (2)エクセルは文字色、セルパターン色は、値と違って「書式」のデータで、(質問者の意識に多分ある)エクセル関数は書式を対象に、書式データの取得や設定が出来ないようなのが現状である。 ーーーー だから書式データーー>プログラムで値として取得ーー>エクセル操作でソート するほか無い。上記でいうプログラムは、エクセルの場合は身近なのはVBAである。 ーーー 標準モジュールに Function iro(a) iro = a.Interior.ColorIndex End Function と入れる。 A列のセルに書式ーセルーパターンのカラーパレットのどれかの 色(56種限定)に(=空き列の最初行)に =iro(A1)入れて下方向に式を複写。 これで色コードがB列に出る (1)色が設定して無いと-4142になるがこの処理をどうするか (2)その値は、順番にしたい大小順にしないとならない (青は5ー>赤は3だが青ー>赤の順にしたければコードの大小が逆転するよう細工しないといけない(色ごとで良ければコード順そのままでも良いかも知れない) VBA、VBAの関数、セル色の仕組み、などの理解も含め、初心者には荷が重いと思われる。 --- エクセル2007では少し様子が変わっている(色について、素人にも上記を意識させない方法をMS社が提供した)かもしれないので、勉強してみて(方向としてはそちらに向かいつつあるといえる)ください。(ざっと調べて無いみたいだが) http://ese-shinshi.com/?p=36 限られた場合の裏技 http://www.geocities.jp/chiquilin_site/data/070918_coloring_cells2.html

bony_1972
質問者

お礼

ありがとうございました。 まったくの初心者なもので、もっと勉強します。

関連するQ&A

専門家に質問してみよう