• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAで、行の表示順が違うシートどうしを比較したい)

VBAで行の表示順が違うシートどうしを比較する方法

このQ&Aのポイント
  • VBAを使用して、行の表示順が異なる2つのシートを比較する方法について教えてください。
  • 具体的には、企業名と評価が記載された2つのシートを比較し、変更された評価を赤字で表示させたいです。
  • また、比較するシート名をセルに入力することで、将来も利用できるようにしたいです。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんにちは! >また来月からも使えるように、例えばセルF1に比較したいシート名を打ち込んで とありますので、「2014.08」SheetのF1セルに比較したいSheet名を入力するとしての一例です。 ↓の画像で左側が「2014.07」Sheetで右側が「2014.08」Sheetとします。 Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面のカーソルが点滅しているところに ↓のコードをコピー&ペースト → Excel画面に戻り、マクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub Sample1() 'この行から Dim i As Long, j As Long, lastRow As Long Dim str As String, c As Range, wS As Worksheet With Worksheets("2014.08") str = .Range("F1") Set wS = Worksheets(str) lastRow = .Cells(Rows.Count, "A").End(xlUp).Row Range(.Cells(2, "B"), .Cells(lastRow, "D")).Interior.ColorIndex = xlNone For i = 2 To lastRow Set c = wS.Range("A:A").Find(what:=.Cells(i, "A"), LookIn:=xlValues, lookat:=xlWhole) If Not c Is Nothing Then For j = 2 To 4 If .Cells(i, j) <> wS.Cells(c.Row, j) Then .Cells(i, j).Interior.ColorIndex = 6 '←黄色 End If Next j End If Next i End With End Sub 'この行まで ※ 評価が変わったセルは「黄色」にしています。m(_ _)m

ok123a
質問者

お礼

出来ました。ありがとうございます! ご丁寧に細かくに説明いだだき、また図も入れていただき助かりました。 感謝です!ほんとうにありがとうございます。 m(_ _)m

関連するQ&A