1
我有一個代碼,除了一個缺陷以外,它的工作方式非常好。它檢查範圍內的文本並返回相鄰單元格中的文本。如果相鄰範圍行(列C到G)爲空,我希望它返回空白單元格(列B)。這是下面如果範圍爲空,則清除單元格內容的VBA
Sub status_summary()
Dim r As Integer
Dim fail As Boolean
Dim mrit As Boolean
Dim pass As Boolean
For r = 2 To 6
If Range("C" & r) = "Failed" Then fail = True
If Range("C" & r) = "Merit" Then mrit = True
If Range("C" & r) = "Pass" Then pass = True
If Range("D" & r) = "Failed" Then fail = True
If Range("D" & r) = "Merit" Then mrit = True
If Range("D" & r) = "Pass" Then pass = True
If Range("E" & r) = "Failed" Then fail = True
If Range("E" & r) = "Merit" Then mrit = True
If Range("E" & r) = "Pass" Then pass = True
If Range("F" & r) = "Failed" Then fail = True
If Range("F" & r) = "Merit" Then mrit = True
If Range("F" & r) = "Pass" Then pass = True
If Range("G" & r) = "Failed" Then fail = True
If Range("G" & r) = "Merit" Then mrit = True
If Range("G" & r) = "Pass" Then pass = True
If pass = True Then Range("B" & r) = "Pass"
If mrit = True Then Range("B" & r) = "Merit"
If fail = True Then Range("B" & r) = "Failed"
fail = False
mrit = False
pass = False
Next r
MsgBox ("All Done")
End Sub
感謝Siddhart使用公式。我應該在我的標準Failed> Merit> Pass中明確說明。所以如果單元格的範圍是空的,則在B列中返回空,否則按照標準。 – user2211547 2013-04-28 09:07:24
檢查上面更新的帖子。你將不得不刷新頁面。 – 2013-04-28 09:13:14
再次感謝。工作正常。 – user2211547 2013-04-28 09:14:07