2017-08-25 112 views
0

我有以下代碼正在執行。有沒有辦法讓VBA中有if ... except語句?

For j = 2 To 82 Step 8 
    For i = 3 To 70 

     y = j + 1 
     k = j + 5 

    If Not IsError(Worksheets("Master PEC").Cells(i, j)) Then 

    If Not Worksheets("Master PEC").Cells(i, j + 2) = "Safe" Or 
      Worksheets("Master PEC").Cells(i, j + 2) = "safe" Then 
blahblahblah 

現在我想要在我的最後一行之後如果不是基本上說「除非列6有單詞'F-003'」。如果這沒有意義:我試圖省略包含「安全」的任何行,除非他們也說「F-003」,然後包括它。有沒有辦法做到這一點?

+0

沒有,但你可以很容易地通過構建良好的'和'而做到這一點'或' – braX

+0

我可以結合了「如果沒有」和「如果」使用和的和或的? – Harry

+0

是的,你也可以使用圓括號...... if((x = 0或x = 1)和(y = 2和z = 4))或c = 1 then .... – braX

回答

0

看起來您只需要「不等於」(<>)運算符。爲你的安全添加一個條件,如果條件安全。

For j = 2 To 82 Step 8 
    For i = 3 To 70 

     y = j + 1 
     k = j + 5 

    If Not IsError(Worksheets("Master PEC").Cells(i, j)) Then 


    If Not Worksheets("Master PEC").Cells(i, j + 2) = "Safe" Or 
      Worksheets("Master PEC").Cells(i, j + 2) = "safe" And 
      Worksheets("Master PEC").Cells(i, 6) <> "F-003" Then 
blahblahblah 
0

您可以使用if s作出任何布爾條件。簡單一些。像這樣:

Option Explicit 

Public Sub TestMe() 

    If 1 = 2 Then 
     Debug.Print "1 = 2" 
    ElseIf 2 = 4 Then 
     Debug.Print "2 = 4" 
    ElseIf Not 2 = 5 Then 
     Debug.Print "Not 2 = 5" 
    End If 

End Sub 

然後編輯它,直到你有一些可行的。

相關問題