2009-08-08 あああ
選択範囲から重複を抽出(エクセル)
重複がある奴の背景に色を塗ります。よくCOUNTIFとかで重複チェックを紹介してますが、あれだと一個目が何処にあるか分かりません。これは重複してる物は一つめから分かります。
マクロ実行↓
Sub 選択範囲を重複チェック()
Dim seen As Object
Set seen = CreateObject("Scripting.Dictionary") ' %seen
For Each c In Selection
If seen.exists(c.Value) Then
c.Interior.Color = 65535
Cells(seen(c.Value)(0), seen(c.Value)(1)).Interior.Color = 65535 '二回以上塗るけど良いよね
Else '初
seen(c.Value) = Array(c.Row, c.Column)
End If
Next c
End Sub
hashにRangeオブジェクトを直接つっこめれば楽なんですが、seen(c.Value) = c とやると何故かc.valueが代入されてしまうので、位置をArrayにして次に渡しています。
Arrayは入るのに何故Rangeが駄目なのか・・・
トラックバック - http://d.hatena.ne.jp/love_peace/20090808/1249724829
リンク元
- 122 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rlz=1T4ADBF_jaJP290JP291&q=Scripting.Dictionary+例
- 108 http://twitter.com/hoge
- 104 http://d.hatena.ne.jp/name0/20090918/1253286636
- 103 http://www.google.co.jp/search?q=VBA+ハッシュ&hl=ja&lr=&sa=2
- 95 http://www.google.co.jp/url?sa=t&rct=j&q=VBA+ハッシュ&source=web&cd=2&sqi=2&ved=0CDAQFjAB&url=http://d.hatena.ne.jp/love_peace/20090808/1249724736&ei=8AfLTsXrKIXNmAWRrvHWDQ&usg=AFQjCNGfH5y2RYzf-jA-ij2-mrwTep3wUA
- 85 http://search.yahoo.co.jp/search?p=エクセル+重複+抽出&ei=UTF-8&yuragi=off&pstart=1&fr=top_ga1_sa&b=11&qrw=0
- 84 http://www.google.co.jp/url?sa=t&rct=j&q=エクセル vba ハッシュ関数&source=web&cd=2&ved=0CDMQFjAB&url=http://d.hatena.ne.jp/love_peace/20090808/1249724736&ei=MD-uTs
- 77 http://www.google.co.jp/url?sa=t&rct=j&q=vba ハッシュ&source=web&cd=2&sqi=2&ved=0CC8QFjAB&url=http://d.hatena.ne.jp/love_peace/20090808/1249724736&ei=2DalTpv3EIbHmQWzjMnbCg&usg=AFQjCNGfH5y2RYzf-jA-ij2-mrwTep3wUA
- 70 http://www.google.co.jp/search?hl=ja&q=VBA+ハッシュマップ&lr=
- 70 http://www.google.co.jp/search?q=エクセル 重複&hl=ja&rlz=1B3GGGL_jaJP338JP338&start=10&sa=N

