ການຊ່ວຍເຫຼືອ LibreOffice 26.2
ກຳນົດໜຶ່ງ ຫຼື ຫຼາຍບລັອກຄຳສັ່ງທີ່ທ່ານຕ້ອງການປະມວນຜົນກໍຕໍ່ເມື່ອເງື່ອນໄຂ ຫຼື ນິພົດທີ່ກຳນົດໃຫ້ນັ້ນເປັນ True (ຈິງ).
If condition Then
statements
[{ElseIf} condition Then
statements]
[Else
statements]
{EndIf|End If}
ທ່ານສາມາດຂຽນ EndIf ແທນ End If ໄດ້.
ຄຳສັ່ງ If ສາມາດຫຍໍ້ໃຫ້ເຫຼືອແຖວດຽວໄດ້ເມື່ອໃຊ້ບລັອກຄຳສັ່ງດຽວ.
If condition Then statement [Else statement]
ຄຳສັ່ງ If...Then ຈະປະມວນຜົນບລັອກໂປຣແກຣມໂດຍຂຶ້ນກັບເງື່ອນໄຂທີ່ກຳນົດໃຫ້. ເມື່ອ LibreOffice Basic ພົບຄຳສັ່ງ If, ມັນຈະກວດສອບເງື່ອນໄຂ. ຖ້າເງື່ອນໄຂເປັນ True, ທຸກຄຳສັ່ງທີ່ຕາມມາຈົນຮອດຄຳສັ່ງ Else ຫຼື ElseIf ຖັດໄປຈະຖືກປະມວນຜົນ. ຖ້າເງື່ອນໄຂເປັນ False ແລະ ມີຄຳສັ່ງ ElseIf ຕາມຫຼັງ, LibreOffice Basic ຈະກວດສອບນິພົດຖັດໄປ ແລະ ປະມວນຜົນຄຳສັ່ງທີ່ຕາມມາຖ້າເງື່ອນໄຂເປັນ True. ຖ້າເປັນ False, ໂປຣແກຣມຈະດຳເນີນການຕໍ່ດ້ວຍຄຳສັ່ງ ElseIf ຫຼື Else ຖັດໄປ. ຄຳສັ່ງທີ່ຕາມຫຼັງ Else ຈະຖືກປະມວນຜົນກໍຕໍ່ເມື່ອບໍ່ມີເງື່ອນໄຂໃດກ່ອນໜ້ານີ້ເປັນ True. ຫຼັງຈາກປະເມີນເງື່ອນໄຂທັງໝົດ ແລະ ປະມວນຜົນຄຳສັ່ງທີ່ກ່ຽວຂ້ອງແລ້ວ, ໂປຣແກຣມຈະດຳເນີນການຕໍ່ດ້ວຍຄຳສັ່ງທີ່ຕາມຫຼັງ EndIf.
ທ່ານສາມາດໃຊ້ຄຳສັ່ງ If...Then ຊ້ອນກັນຫຼາຍຊັ້ນໄດ້.
ຄຳສັ່ງ Else ແລະ ElseIf ເປັນທາງເລືອກ (ຈະມີ ຫຼື ບໍ່ມີກໍໄດ້).
ທ່ານສາມາດໃຊ້ GoTo ແລະ GoSub ເພື່ອກະໂດດອອກຈາກບລັອກ If...Then ໄດ້, ແຕ່ບໍ່ສາມາດກະໂດດເຂົ້າໄປໃນໂຄງສ້າງ If...Then ໄດ້.
ຕົວຢ່າງຕໍ່ໄປນີ້ຊ່ວຍໃຫ້ທ່ານປ້ອນວັນໝົດອາຍຸຂອງຜະລິດຕະພັນ ແລະ ກວດສອບວ່າວັນໝົດອາຍຸນັ້ນຜ່ານໄປແລ້ວຫຼືບໍ່.
Sub ExampleIfThenDate
Dim sInput As String
Dim dInput As Date
On Error Goto inputError
sInput = InputBox("ປ້ອນວັນໝົດອາຍຸ (YYYY-MM-DD)")
dInput = DateValue(sInput)
If dInput < Date() Then
MsgBox "ວັນໝົດອາຍຸໄດ້ຜ່ານໄປແລ້ວ"
ElseIf dInput > Date() Then
MsgBox "ວັນໝົດອາຍຸຍັງມາບໍ່ທັນຮອດ"
Else
MsgBox "ວັນໝົດອາຍຸແມ່ນມື້ນີ້"
End If
inputError:
If dInput = 0 Then MsgBox "ການປ້ອນຂໍ້ມູນບໍ່ຖືກຕ້ອງ"
End Sub