這給一試:
Sub YesNoCheck()
Dim s1 As Worksheet, s2 As Worksheet
Dim rCheck As Range
Set s1 = Sheets("Sheet1")
Set s2 = Sheets("Sheet2")
Dim wf As WorksheetFunction
Set wf = Application.WorksheetFunction
Set rCheck = s2.Range("C1:C100")
s1.Range("G5:G6").Clear
If wf.CountIf(rCheck, "No") = 0 Then
s1.Range("G5").Value = "Yes"
s1.Range("G5").Interior.ColorIndex = 10
Exit Sub
End If
If wf.CountIf(rCheck, "Yes") = 0 Then
s1.Range("G6").Value = "No"
s1.Range("G6").Interior.ColorIndex = 3
End If
End Sub
編輯#1
我的錯誤,而不是使用:
Sub YesNoCheck2()
Dim s1 As Worksheet, s2 As Worksheet
Dim rCheck As Range
Set s1 = Sheets("Sheet1")
Set s2 = Sheets("Sheet2")
Dim wf As WorksheetFunction
Set wf = Application.WorksheetFunction
Set rCheck = s2.Range("C1:C100")
s1.Range("G5:G6").Clear
If wf.CountIf(rCheck, "Yes") + wf.CountIf(rCheck, "NA") = 100 Then
s1.Range("G5").Value = "Yes"
s1.Range("G5").Interior.ColorIndex = 10
End If
If wf.CountIf(rCheck, "No") + wf.CountIf(rCheck, "NA") = 100 Then
s1.Range("G6").Value = "No"
s1.Range("G6").Interior.ColorIndex = 3
End If
End Sub
看在我的肩膀上有朋友指出,如果所有條目是「不適用」,那麼這兩個條件可能是真的!
兩個步驟是找出一個公式 - 嘗試'COUNTIFS' - 計算「是」或「否」部分,然後將條件格式應用於該單元格。不需要VBA。 –
你可以在上面提到的標準中提出公式,我應該在哪裏提出該公式。對不起,我不熟悉Excel公式和條件格式。 – sandesh
@DougGlancy:請你詳細說明並幫助我。 – sandesh