2014-01-24 81 views
1

我在Excel中試圖完成某種特定的任務,這似乎超出了我的深度。我有一個數據集時,每次行/觀測兩個五單詞列表,像這樣的例子:比較行內的兩組單元格並突出顯示Excel中的同一行重複項

http://i.imgur.com/YVge8AB.png?1

就是我希望做到的是突出了這一切都是在這兩個5字單行內的單詞列表。這兩個五字列表之間重疊的數量因行而異。而且我不關心識別不同行中的任何重複條目。也就是說,這將會是巨大的,如果有可能創建一個宏,將給予這樣的:

http://i.imgur.com/3w2nfvD.png?1

我搜索這個網站相當多,並使用谷歌,以找出如何創建一個宏去做這個。我找到了許多類似的宏,但是我發現的每一個宏都是爲了識別兩張整張紙或兩列整列之間的所有重複內容,或者類似的東西,這與我不太一樣試圖去做。基於我已經能夠找到的宏,我感覺到做我想做的事情應該是可能的,但是我對Visual Basic不夠了解,無法編輯我發現的宏以滿足我的需要。

如果可以編程一個宏來做到這一點,它會爲我節省相當多的時間,因爲否則我正在爲兩個當前數據集手動執行重複標識(每個數據集都有150個-200次觀測),再加上我計劃在未來收集數據,這需要採用相同的程序。除此之外,任何能夠幫助我的宏都可以幫助有類似需求的人。

在此先感謝您提供的任何幫助!

+0

你看過使用條件格式? –

回答

0

嘗試條件格式。

當I2(左上角)是活動單元格時,選擇「表格2」(例如I2:Mn,其中n是最後一行)。然後用這個公式:

=OR(I2=$C2:$G2) 
+0

這很好 - 它完成了我想要的。非常感謝你的幫助,羅恩! – user3232971

0

我想用Conditional Formatting也許是一個簡單的解決方案,但一個辦法做到這一點使用VBA如下:

Sub HighlightDuplicates() 
    Dim masterList(), highlightList(), rw As Long, col As Long 

    masterList = Range("C1:G150") 
    highlightList = Range("I1:M150") 

    For rw = 1 To UBound(masterList, 1) 
     For col = 1 To UBound(masterList, 2) 
      If highlightList(rw, col) = masterList(rw, col) Then 
       Cells(rw, col).Offset(0, 8).Interior.Color = vbRed 
      End If 
     Next col 
    Next rw 
End Sub 

這裏我們讀到兩個列表中的數組,然後遍歷它們來檢查匹配。

Offset(0, 8)是一個神奇數字(yikes!),它根據您的佈局獲取正確的單元格。

+0

謝謝你的幫助,Alex!條件格式的確成爲一個簡單的解決方案。出於某種原因,我無法獲得這個VBA腳本來達到同樣的效果:當我運行它時,導致如下結果:http://i.imgur.com/Lk5CLk0.png。這很可能是我做錯了什麼,但是看到我能夠使用條件格式來實現我的目標,這並不是什麼大不了的事情。再次感謝! – user3232971

+0

好東西。我認爲你有最好的最簡單的解決方案。 –

相關問題