Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3248 / 13644 ツリー ←次へ | 前へ→

【63281】数字とセル色を参照して色をつけるには? ぴの 09/10/22(木) 18:37 質問[未読]
【63283】Re:数字とセル色を参照して色をつけるには? ponpon 09/10/22(木) 21:24 発言[未読]
【63297】Re:数字とセル色を参照して色をつけるには? ぴの 09/10/23(金) 23:13 お礼[未読]

【63281】数字とセル色を参照して色をつけるには?
質問  ぴの  - 09/10/22(木) 18:37 -

引用なし
パスワード
   "原本"というワークシートに1〜100までの数字がA列に1から100まで順番に入力してあるとします。
その1〜100までのセルにはそれぞれ色が塗りつぶされています。
もちろん100色も無いので重複したカラーで塗られているセルもあります。

次に"結果"というワークシートがあるとします。
そのシートA列にはランダムに1〜100までの数字が入っています。
行数は決まっていません。100以上あるので重複した数字も入力してあります。
セルに色は塗られていません。

Worksheet("原本")のデータ(数字と色)を参照して、
Worksheet("結果")の数字のは入ったセルにWorksheet("原本")のデータの数字と
同じ色を塗るにはどうすればよろしいでしょうか?

わかりにくいかと思いますが、どうぞ宜しくお願いいたします。

【63283】Re:数字とセル色を参照して色をつけるに...
発言  ponpon  - 09/10/22(木) 21:24 -

引用なし
パスワード
   ▼ぴの さん:
>"原本"というワークシートに1〜100までの数字がA列に1から100まで順番に入力してあるとします。
>その1〜100までのセルにはそれぞれ色が塗りつぶされています。
>もちろん100色も無いので重複したカラーで塗られているセルもあります。
>
>次に"結果"というワークシートがあるとします。
>そのシートA列にはランダムに1〜100までの数字が入っています。
>行数は決まっていません。100以上あるので重複した数字も入力してあります。
>セルに色は塗られていません。
>
>Worksheet("原本")のデータ(数字と色)を参照して、
>Worksheet("結果")の数字のは入ったセルにWorksheet("原本")のデータの数字と
>同じ色を塗るにはどうすればよろしいでしょうか?
>
>わかりにくいかと思いますが、どうぞ宜しくお願いいたします。

ふつうに回して、一致したら、そのセルの色を取得しています。
Sub test()
  Dim r As Range
  Dim r2 As Range
  
  Set WS1 = Sheets("原本")
  Set WS2 = Sheets("結果")
  
    For Each r In WS2.Range(WS2.Cells(1, 1), WS2.Cells(Rows.Count, 1).End(xlUp))
      For Each r2 In WS1.Range(WS1.Cells(1, 1), WS1.Cells(100, 1))
        If r.Value = r2.Value Then
          r.Interior.ColorIndex = r2.Interior.ColorIndex
        End If
      Next
     Next
End Sub

【63297】Re:数字とセル色を参照して色をつけるに...
お礼  ぴの  - 09/10/23(金) 23:13 -

引用なし
パスワード
   ▽ponponさん
返答及びご回答ありがとうございます。
無事セルに色を付けることができるようになりました。
実際は100ではなく、1000個以上のセルがあるので
いちいち見比べて塗るという手作業から
かなりの時間短縮ができるようになりました。
ありがとうございました。

3248 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free