Как использовать, если условие внутри, если в VBA - PullRequest
0 голосов
/ 15 октября 2018

Я хочу использовать If() внутри оператора If().Возможно ли это без добавления Else() до.

Мой код:

For i = 3 To 24
  If i < 25 Then
    sourcef = Sheets("Macro Control").Range("B" & i)
    fname = "Z:\ISC-Product Costing\Manufacturing Controlling\03_BUDGETS\2019\Chocolate\OP'19\Reporting\Plant Submission\OP'19 Deck " & sourcef & ".xlsx"
    Workbooks.Open fname, UpdateLinks:=0
    Set wC3 = ActiveWorkbook
    Set wC1 = wC3.Sheets("Conversion P&L")
    Set wC2 = ThisWorkbook.Sheets(sourcef)
    Sheets("Conversion P&L").Select
    ThisWorkbook.Activate
    Sheets(sourcef).Select
    Call CompareColumns
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "EUR"
    Range("B2").Select
    ("some more Code")

    wC3.Activate
    ActiveWindow.Close savechanges:=False
  Else
  End If
Next i

(some more code)
End Sub

Я хочу добавить еще один If после Call CompareColumns.Как это сделать?

Call CompareColumns - это еще один макрос, в котором значение «same» будет определено как True или False.Я хочу добавить If Same = True then "Код продолжается" Else перейти к wc3. Activate.

Ответы [ 2 ]

0 голосов
/ 15 октября 2018

Если вам нужно больше, если вы можете использовать выберите регистр: т.е.

Select Case yourInput
    Case Is <= 25
        'your code
    Case Is >= 70
        'your code
    Case Else
        'your code
End Select
0 голосов
/ 15 октября 2018

Вы можете использовать столько «Если», сколько захотите.И вам также не нужно использовать другой случай.

If .... Then

   If .... Then
   ....
   Else
   ....
   End If

End If

В вашем случае:

If i < 25 Then
   Code...
 If i < 25 Then
   Call CompareColumns
   Rest of code....
 Else 
  wc3.Activate
  Rest of code....
 End If
End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...