[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『データの突合』(マクロ)
マクロでデータを突合をしたいんですが、過去に同じようなものが見つからなかったので質問します。
3行目〜22行目のデータと、43行目〜62行目のデータを突合し、塗りつぶし色に相違がないかだけチェックし突合結果を23行目〜42行目に上から順に出したいです。(結果は合っていれば何もせず、色に相違があれば突合結果の行のセルに赤色の塗りつぶしをしたいです。)
塗りつぶしは、If Cells(Row, "D").Value = ActiveCell.Interior.Color = RGB(0, 176, 240)
こんな感じのif文が入るのかなと思うんですが、3行目と43行目、3行目と44行目、という風にチェックする方法が分かりません。どうか宜しくお願いいたします。
< 使用 Excel:Excel2010、使用 OS:Windows7 >
Sub test() Dim r As Long For r = 3 To 22 If Cells(r, 4).Value <> Cells(r + 40, 4).Value Then Cells(r + 20, 4).Interior.ColorIndex = 3 End If Next End Sub みたいなことでしょうか? (se_9) 2015/11/24(火) 09:48 修正10:00
se_9さん
Sub test() Dim r As Long For r = 3 To 22 For c = 4 To 62 If Cells(r, c).Interior.Color = RGB(0, 176, 240) <> Cells(r + 40, c).Interior.Color = RGB(0, 176, 240) Then Cells(r + 20, c).Interior.ColorIndex = 3 End If Next Next End Sub
上記のように改変させていただいたのですが、これだと、塗りつぶしなし同士も赤くなってしまいます…申し訳ありませんが、おかしなところがあれば教えて頂けないでしょうか。
(マクロ) 2015/11/24(火) 10:09
あれ?勘違いしていのたで一旦消したのにマクロさんが書き込みを復活させてしまったようで・・・。 コメントは編集からではなくコメント欄からお願いします。 試してないのですが
Sub test()
Dim r As Long
For r = 3 To 22 For c = 4 To 62 If Cells(r, c).Interior.Color <> RGB(0, 176, 240) And Cells(r + 40, c).Interior.Color <> RGB(0, 176, 240) Then Cells(r + 20, c).Interior.ColorIndex = 3 End If Next Next
End Sub
でできますかね? (se_9) 2015/11/24(火) 10:22
あっそうだったんですね。私が間違って消してしまったのかと勘違いして復活させてしまいました。
うまくいきました!本当にありがとうございます!
(マクロ) 2015/11/24(火) 10:35
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.