• ベストアンサー

多くのエクセル行を自動的に色塗り分け

よろしくお願いします。 数万行のエクセルの行を自動的にいくつかの行で塗りつぶししたいのですが できるでしょうか・?エクセル2010です。 オートフィルタを使って並びかえをした際に、行がずれていないかどうかを 視覚的に確認するために、5つの色くらいで 行ごとに塗り分けしたいのですが エクセル上で自動的にできないでしょうか? 教えて頂ければと思います。

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

  • ベストアンサー
回答No.1

VBAで?? http://www.happy2-island.com/excelsmile/smile03/capter00602.shtml 色は適当に変更を、、、 Option Explicit Sub Color10() Const xNum = 10 Const xColor = "19,20,36,40,24,2,44,35,36,37" Dim xParette As Variant Dim xLast As Long Dim kk As Long Dim mm As Long Dim nn As Long xParette = Split(xColor, ",") xLast = Cells(Rows.Count, "A").End(xlUp).Row For nn = 1 To xLast kk = (nn - 1) Mod xNum Rows(nn).Interior.ColorIndex = CInt(xParette(kk)) Next End Sub

kimi1980
質問者

お礼

回答ありがとうございます。 大変参考になりました。

その他の回答 (3)

  • tsubuyuki
  • ベストアンサー率45% (699/1545)
回答No.4

> いくつかの行で塗りつぶししたいのですができるでしょうか・? > 5つの色くらいで行ごとに塗り分けしたい いろんな意味に取れるので曖昧ではありますが、 条件付書式で対応できる範囲ではないかと推察します。 やりたいことが例えば「5色くらいの(カラフルな)横縞々表にしたい」だとすると、 2行目を選択状態にし、条件付書式のルールに(1行目がタイトル行=除外する)、   数式:=MOD(ROW(),5)=○   (○は0~4の数字) とし、見合う書式(塗りつぶし)を設定。 このルールを5つ用意し、下の行に必要な数だけ「書式をコピー」してやりましょう。 ちなみにMOD関数はザックリと、 括弧内の前の数値を、後ろの数値で割った時の余りを返す関数です。 例えばMOD(10,3)とすると、10÷3=3あまり1 ですので、「1」を返してきます。 条件付書式に入れた式で見ると、ROW()は自身の行番号を返しますから、 2行目にこれが入っていると、2÷5=0あまり2 で「2」を返してきます。 ちなみに5行目だと、5÷5=1あまり0 ですから「0」が返ります。 なので、式中の○を5種類使い分けると、5色の縞々が出来上がる、という事です。 やりたいことが、「あるセルの内容によって塗り分けたい」のであれば やはり条件付書式の数式に「その条件」を書いてやればOK。 例えば、A列が「あ」なら・・とするなら、   数式:=A2="あ" としてやればOK。 必要な分のルールを重ねてやり、下の行に「書式のコピー」してやりましょう。 > mike_gさん 2010らしいので、おそらく添付図の赤枠内の「並べ替え」でしょう。

kimi1980
質問者

お礼

回答ありがとうございます。 このようなやり方もあるのですね。 参考になりました。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

例えばシートの偶数の行に黄色く色を付けるのでしたら次のようにします。 シートを選択したのちに、あるいは表の範囲を選択したのちに「ホーム」タブの「条件付き書式」で「新しいルール」を選択します。 「数式で書式設定するセルを決定」を選択して下の数式の窓には次の式を入力します。 =MOD(ROW(),2)=0 その後に同じ画面の「書式」から「塗りつぶし」のタブで黄色を選定してOKします。

kimi1980
質問者

お礼

回答ありがとうございます。 MOD関数というのをはじめて知りました。

noname#204879
noname#204879
回答No.2

「オートフィルタを使って抽出をした」なら分かるのですが、「オートフィルタを使って並びかえをした」とは具体的にどういう操作をするのですか?

関連するQ&A