私は文字列値を持つデータの列を持っています。私はその列の各セルで比較を行い、その値が重複しているかどうかをチェックしたい。比較は、フルテキストとワイルドカードの両方である必要があります。 |vbaを使用してExcelの重複行を削除します
以下あなたはスクリーンショットを見れば、会社CESリミテッドは別の会社ECLERX SERVICES LTDとともに行17上だけでなく、3行目に存在する私のデータのスクリーンショット
ですCES Limited。ですから、このような重複値を強調したいと思います。以下は
コードは、すべての細胞が異なるように強調してしかし、私は
Dim rangeToUse As Range, singleArea As Range, cell1 As Range, cell2 As Range, i As Integer, j As Integer
Set rangeToUse = Selection
Cells.Interior.ColorIndex = 0
Cells.Borders.LineStyle = xlNone
For Each singleArea In rangeToUse.Areas
singleArea.BorderAround ColorIndex:=1, Weight:=xlThin
Next singleArea
For i = 1 To rangeToUse.Areas.Count
For Each cell1 In rangeToUse.Areas(i)
MsgBox cell1.Value
For j = 1 To rangeToUse.Areas.Count
For Each cell2 In rangeToUse.Areas(j)
If cell1.Value = cell2.Value Then
cell2.Interior.ColorIndex = 38
End If
MsgBox cell2.Value
Next cell2
Next j
Next cell1
Next i
を書いたコードです。誰でも私が間違っていることを教えてもらえますか?
、それはExcelのユニークな値のリストを作成するとなると、何が良い古い[ 'Dictionary'オブジェクト](http://stackoverflow.com/questions/915317/does-vbaを打ちます-have-dictionary-structure)である。 – Tim
リストを反復するときに、ある時点で 'cell1'と' cell2'は同じセルを参照するので、同じ色になります。もちろん、あなたのマッチテストに合格します。 cell1を自分自身と比較することを除外する必要があります。 –