• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:文字列が同じ場合、セルに色を塗りたい)

エクセルVBAでリストにある文字列と他のセルの文字列が末尾まで完全に同一の場合、セルに色を塗る方法

このQ&Aのポイント
  • エクセルVBAを使用して、特定のリストにある文字列と他のセルの文字列が末尾まで完全に同一の場合、セルに色を塗る方法を紹介します。
  • 具体的には、G列にあるリストの文字列とB2:B7とE2:E7の範囲の文字列を比較し、完全に同一の場合はB2:B7とE2:E7のセルに黄色で色を塗ります。
  • また、リストにはあるけれども、B2:B7とE2:E7のセルに存在しない文字列がある場合は、リストの該当するセルに緑で色を塗ります。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

黄色も緑もやることは一緒です。参考にして、適切に応用してください。 sub macro1()  dim h as range  dim target as range  dim lastrow as long  set target = range("B2:B7,E2:E7")  lastrow = range("G65536").end(xlup).row  for each h in target   if h <> "" and application.countif(range("G2:G" & lastrow), h) > 0 then    h.interior.colorindex = 6   else    h.interior.colorindex = xlnone   end if  next  for each h in range("G2:G" & lastrow)   if h <> "" and application.countif(target.areas(1), h) = 0 and application.countif(target.areas(2), h)=0 then    h.interior.colorindex = 4   else    h.interior.colorindex = xlnone   end if  next end sub #もっとも、わざわざマクロなど持ち出さなくても、条件付き書式で十分に出来ます。が、まぁマクロでやりたいなら。

n151713m
質問者

お礼

ありがとうございます。 勉強になります。