Al respecto puedo informarte, en forma general que:
1- La estructura de control if
Permite que el programa ejecute instrucciones cuando se cumple una condición.
La sintaxis es la siguiente:
if condición:
órdenes que se ejecutan si la condición es cierta
La condición se evalúa siempre.
Si el resultado es True se ejecutan las sentencias.
Si el resultado es False no se ejecutan las sentencias.
La primera línea contiene una expresión lógica a evaluar y termina siempre en dos puntos.
La segunda línea, es un bloque que siempre debe ir sangrado y esta constituido por las órdenes que se ejecutan cuando la condición es verdadera.
2- La estructura de control if — else
Permite que el programa ejecute unas instrucciones cuando la condición es cierta y otras instrucciones cuando la condición es falsa.
La sintaxis es la siguiente:
if condición:
órdenes que se ejecutan si la condición es cierta
else:
órdenes que se ejecutan si la condición es falsa
La ejecución de esta construcción es la siguiente:
La condición se evalúa siempre.
Si el resultado es True se ejecutan las sentencias 1
Si el resultado es False se ejecutan las sentencias 2
La primera línea contiene la expresión lógica a evaluar y termina siempre en dos puntos.
La segunda línea es un bloque que siempre debe ir sangrado, está constituído por las órdenes que se ejecutan cuando la condición es verdadera
Después viene la línea con la orden else, que indica que las órdenes se ejecutan cuando la condición es falsa, esta línea también debe terminar siempre en dos puntos.
La última línea, es un bloque que siempre debe ir sangrado y está constituído por las órdenes de instrucciones que corresponde a else
Se aconseja utilizar siempre el mismo número de espacios en el sangrado, generalmente cuatro.
3- La estructura de control if — else, se puede extender añadiendo la instrucción elif:
Permite encadenar varias condiciones.
La sintaxis es la siguiente:
if condición_1:
bloque 1
elif condición_2:
bloque 2
else:
bloque 3
Si se cumple la condición 1, se ejecuta el bloque 1
Si no se cumple la condición 1 pero sí que se cumple la condición 2, se ejecuta el bloque 2
Si no se cumplen ni la condición 1 ni la condición 2, se ejecuta el bloque 3.
Se pueden escribir todos los bloques elif que resulten necesarios, el bloque else se ejecuta si no se cumple ninguna de las condiciones previas.
Editado: ----------- 30-10-2020 ----------
En LibreOffice Basic.
Tiene similar a Python, la instrucción If…Then…Else
Esta instrucción define bloques de instrucciones que se ejecutan cuando una condición es verdadera.
Sintaxis:
If condition=true
Then bloque de instrucciones
ElseIf condition=true
Then Bloque de instrucciones
Else
Bloque de instrucciones
EndIf
En vez de Else If puede escribir ElseIf, y en vez de End If puede escribir EndIf.
Cuando la instrucción If, es verdadera, se ejecutan todas las instrucciones posteriores hasta que se encuentre una nueva instrucción Else o ElseIf.
Si la condición es falsa y a continuación hay una instrucción ElseIf que es verdadera se ejecutan todas las instrucciones posteriores hasta que se encuentre una nueva instrucción Else o ElseIf.
Si la condición es falsa continúa con la siguiente instrucción ElseIf o Else.
La ejecución continúa hasta EndIf.
Este es un ejemplo brindado por LibreOffice Help -https://help.libreoffice.org/latest/es/text/sbasic/shared/03090101.html-
Que permite introducir una fecha de caducidad de un producto y determina si ésta ya ha caducado.
Ejemplo:
Sub ExampleIfThenDate
Dim sDate As String
Dim sToday As String
sFecha = InputBox("Escriba la fecha de caducidad (MM.DD.AAAA)")
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 "La fecha de caducidad ya ha pasado"
ElseIf sDate > sToday Then
MsgBox "La fecha de caducidad no ha pasado aún"
Else
MsgBox "La fecha de caducidad es hoy"
End If
End Sub