Jak używać instrukcji exit if w vba (z przykładem)
W VBA nie ma wbudowanej instrukcji Exit If , ale można ją łatwo zasymulować, używając instrukcji If z instrukcją GoTo .
Poniższy przykład pokazuje, jak to zrobić w praktyce.
Przykład: Jak używać instrukcji Exit IF w VBA
Załóżmy, że chcemy utworzyć makro, które poprosi użytkownika o wprowadzenie liczby całkowitej mniejszej niż 10, a następnie użyje instrukcji JEŻELI , aby wykonać następujące czynności:
- Jeśli wprowadzona liczba całkowita jest mniejsza niż 10, pomnóż ją przez 2 i wyświetl wynik w komórce A1 .
- Jeżeli wprowadzona liczba całkowita jest nie mniejsza niż 10, należy zakończyć instrukcję IF i wyświetlić komunikat o błędzie.
W tym celu możemy użyć następującej składni:
SubMultiplySomeValue ()
Dim inputInteger As Integer
'get integer from user
inputInteger = InputBox(" Please enter an integer less than 10 ")
'check if integer is less than 10
If inputInteger < 10 Then
Range(" A1 ").Value = inputInteger * 2
Else
GoTo FlagMessage
End If
FlagMessage:
MsgBox “ This number is not less than 10 ”
End Sub
Po uruchomieniu tego makra zostaniemy poproszeni o wprowadzenie liczby całkowitej mniejszej niż 10:.
Załóżmy, że wprowadzimy wartość 5 i następnie wciśniemy OK :
Ponieważ ta liczba całkowita jest mniejsza niż 10, podprocedura pomnoży wprowadzoną przez nas wartość przez 2 i wyświetli wynik w komórce A1 :
Załóżmy jednak, że zamiast tego wpiszemy wartość 15 :
W programie Excel otrzymalibyśmy następujące okno komunikatu:
Wprowadzona wartość nie zostanie pomnożona przez 2 i w komórce A1 nie zostaną wyświetlone żadne wyniki.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:
Jak wyjść z Sub w przypadku błędu w VBA
Jak używać IFERROR w VBA
Jak usunąć pliki za pomocą VBA