我需要将标题从一个工作簿工作表1匹配到另一工作簿工作表1。如果标题匹配,则需要将特定的单元格颜色更改为绿色,如果部分匹配,则将单元格颜色更改为黄色,如果它与任何标题都不匹配,然后颜色变为红色。当我这样做时,所有单元格都变为红色..我只想添加一些条件,例如如果该单元格已经具有绿色,则忽略该单元格红色,但我有可能将绿色更改为黄色。请帮助我解决此问题
'标题代码
If InStr(1, plan_Title, pca_Title) > 0 Then
If (UCase(plan_Title) = (pca_Title)) Then
Spotpca.Range("E" & j).Interior.Color = rgbGreen
Spotplan.Range("f" & i).Interior.Color = rgbGreen
Else
Spotpca.Range("E" & j).Interior.Color = rgbYellow
Spotplan.Range("f" & i).Interior.Color = rgbYellow
End If
Else
Spotpca.Range("E" & j).Interior.Color = rgbRed
Spotplan.Range("f" & i).Interior.Color = rgbRed
End If
答案 0 :(得分:0)
您的代码尚不完整,所以我只是猜测您正在循环,我要做的就是检查单元格是否为绿色,如果是,请转到下一行(?)
Option Explicit
Sub Painting()
'code for title
For i = 1 To x
For j = 1 To y
If spotpca.Range("E" & j).Interior.Color = rgbGreen Then GoTo Nexttitle 'check if the cell is green
If InStr(1, plan_Title, pca_Title) > 0 Then
If (UCase(plan_Title) = (pca_Title)) Then
spotpca.Range("E" & j).Interior.Color = rgbGreen
Spotplan.Range("f" & i).Interior.Color = rgbGreen
Else
spotpca.Range("E" & j).Interior.Color = rgbYellow
Spotplan.Range("f" & i).Interior.Color = rgbYellow
End If
Else
spotpca.Range("E" & j).Interior.Color = rgbRed
Spotplan.Range("f" & i).Interior.Color = rgbRed
End If
Next j
Nexttitle:
Next i
End Sub