Форум по VBA и MS Office

VBA, Excel => VBA, макросы в Excel => Тема начата: Посетитель от 03 мая 2022, 13:41

Название: VBA Макросы. Compile error: End If without block If.
Отправлено: Посетитель от 03 мая 2022, 13:41
Использую такой код и происходит ошибка: Compile error: End If without block If. При этом VBA выделяет "End If".
Почему происходит ошибка?

Sub Макрос()

    Dim Number As Double, Digits As Double
   

    Number = 53
   
    If Number < 10 Then Digits = 1
    If Number < 100 Then Digits = 2
    End If
   
End Sub
Название: VBA Макросы. Compile error: End If without block If.
Отправлено: Администратор от 03 мая 2022, 15:45
Если вы пишите конструкцию If...Then в одну строку (а не в несколько), то End If не надо использовать:

Sub Макрос()

    Dim Number As Double, Digits As Double
   
   
    Number = 53
   
    If Number < 10 Then Digits = 1
    If Number < 100 Then Digits = 2
   
End Sub
Название: VBA Макросы. Compile error: End If without block If.
Отправлено: Посетитель от 03 мая 2022, 19:02
Cпасибо за уделенное время. Макрос теперь работает, как я хочу.