Collabora Office 24.04 Βοήθεια
Ορίζει ένα ή περισσότερα μπλοκ πρότασης που θέλετε να εκτελέσετε μόνο εάν μια δεδομένη συνθήκη ή έκφραση είναι True.
If condition Then
statements
[{ElseIf|Else If} expression Then
statements]
[Else
statements]
{EndIf|End If}
Αντί για Else If μπορείτε να γράψετε ElseIf, αντί για End If μπορείτε να γράψετε EndIf.
Οι προτάσεις If μπορούν να συντομευθούν σε μία γραμμή χρησιμοποιώντας μοναδικά μπλοκ προτάσεων.
If condition Then statement [Else statement]
Η πρόταση If...Then εκτελεί μπλοκ προγράμματος που εξαρτώνται από τις δεδομένες συνθήκες. Όταν η Basic του Collabora Office αντιμετωπίζει μια πρόταση If, ελέγχεται η συνθήκη. Εάν η συνθήκη είναι True, όλες οι επόμενες προτάσεις μέχρι την επόμενη Else ή ElseIf πρόταση εκτελούνται. Εάν η συνθήκη είναι False και μια πρόταση ElseIf ακολουθεί, η Basic του Collabora Office ελέγχει την επόμενη έκφραση και εκτελεί τις επόμενες προτάσεις εάν η συνθήκη είναι True. Εάν είναι False, το πρόγραμμα συνεχίζει είτε με την επόμενη ElseIf, είτε με την πρόταση Else. Οι προτάσεις που ακολουθούν την Else εκτελούνται μόνο εάν καμιά από τις προηγουμένως ελεγμένες συνθήκες δεν ήταν True. Μετά την αξιολόγηση όλων των συνθηκών και την εκτέλεση των αντίστοιχων προτάσεων, το πρόγραμμα συνεχίζει με την πρόταση που ακολουθεί την EndIf.
Μπορείτε να τοποθετηθείτε το πολλαπλές δηλώσεις If...Then την μία μέσα στην άλλη.
Στο Else και στο ElseIf οι δηλώσεις είναι προαιρετικές.
Μπορείτε να χρησιμοποιήσετε την GoTo και την GoSub για να φύγετε έξω από ένα μπλοκ If...Then, αλλά όχι για να φύγετε έξω από μία δομή If...Then.
Το ακόλουθο παράδειγμα σάς επιτρέπει να εισαγάγετε την ημερομηνία λήξης ενός προϊόντος, και επιστρέφει την πληροφορία αν το προϊόν έληξε.
Sub ExampleIfThenDate
Dim sDate As String
Dim sToday As String
sDate = InputBox("Εισαγάγετε την ημερομηνία λήξης (MM.ΗΗ.ΕΕΕΕ")
sDate = Right$(sDate, 4) + Mid$(sDate, 4, 2) + Left$(sDate, 2)
sToday = Date$
sToday = Right$(sToday, 4)+ Mid$(sToday, 4, 2) + Left$(sToday, 2)
If sDate < sToday Then
MsgBox "Η ημερομηνία λήξης πέρασε"
ElseIf sDate > sToday Then
MsgBox "Η ημερομηνία λήξης δεν έχει περάσει ακόμα"
Else
MsgBox "Η ημερομηνία λήξης είναι σήμερα"
End If
End Sub