2013-08-18 62 views
-2

我需要能夠通過數據和顏色代碼基於從內容列表中的數據項的列表中搜索宏。vba根據內容列表搜索列表和顏色代碼匹配。

在列A例如搜索的數據,如果對應於列B(內容),那麼色碼在列A的入口,以通過約1000的條目相匹配預顏色在列B的編碼數據

我需要這循環。

在此先感謝。 安迪

+1

記錄一個宏,然後使用適當的if-clause修改相應的代碼。 錄製的宏將顯示切換活動單元格所需的VBA代碼。 –

回答

0

我恨,鼓勵你,因爲你沒有按照網站規則說來研究和詢問quesiton之前嘗試的解決方案,並分享你已經嘗試過。這可能就是爲什麼其他人給你的問題一個負面的評價。

但是,你做你的問題的參數足夠的思考,我懷疑你可能已經撰寫此問題之前嘗試過的東西,而我給予你的疑點利益。這是一種可能的解決方案,如果您使用「預先彩色編碼的數據」表示單元格的內部。

更改頂部的常量來匹配您的數據的列和標題行。

如果您的數據的預編碼不是我使用的內部設置,您可以參考Marty McVry關於使用宏記錄器的建議,以確定您正在更改的設置並將它們合併到此代碼中(其中代碼是With rCell.Interior)。

Sub MatchColor() 

Const sColumnID As String = "A" 
Const iHeaderID As Integer = 1 

Dim rCell As Range 
Dim rColumn As Range 

Set rColumn = Range(sColumnID & iHeaderID, Range(sColumnID & iHeaderID).End(xlDown)) 

For Each rCell In rColumn 

    If rCell.Value = rCell.Offset(0, 1).Value Then 
     With rCell.Interior 
      .Pattern = rCell.Offset(0, 1).Interior.Pattern 
      .PatternColorIndex = rCell.Offset(0, 1).Interior.PatternColorIndex 
      .ThemeColor = rCell.Offset(0, 1).Interior.ThemeColor 
      .TintAndShade = rCell.Offset(0, 1).Interior.TintAndShade 
      .PatternTintAndShade = rCell.Offset(0, 1).Interior.PatternTintAndShade 
     End With 
    End If 

Next rCell 

End Sub