Module
Contents
Index 🔎︎

# If...Then...Else Statement

កំណត់​បណ្តុំ​សេចក្តី​ថ្លែង​ការណ៍​មួយ ឬ​ច្រើន​ ដែល​អ្នក​ចង់​ប្រតិបត្តិ តែ​ក្នុង​ករណី​ដែល​​លក្ខខណ្ឌ​ដែល​បាន​ផ្តល់ឲ្យ​​ពិត ។

## វាក្យ​សម្ពន្ធ ៖

    If condition=true Then Statement block [ElseIf condition=true Then] Statement block [Else] Statement block EndIf

ជំនួស​ឲ្យ Else If អ្នក​អាច​សរសេរ ElseIf, ជំនួស​ឲ្យ End If អ្នក​អាច​សរសេរ EndIf ។

## ប៉ារ៉ាម៉ែត្រ ៖

សេចក្តី​ថ្លែង​ការណ៍ If...Then ប្រតិបត្តិ​បណ្តុំ​កម្មវិធី អាស្រ័យ​លើ​លក្ខខណ្ឌ​ដែល​បាន​ផ្តល់ ។ នៅ​ពេល LibreOffice Basic ជួប​ប្រទះ​សេចក្តី​ថ្លែង​ការណ៍ If មួយ នោះ​លក្ខខណ្ឌ​ត្រូវ​បានសាកល្បង​ ។ ប្រសិន​បើ​លក្ខខណ្ឌ​ពិត សេចក្តី​ថ្លែង​ការណ៍​នៅ​បន្ទាប់​រហូត​ដល់​សេចក្តី​ថ្លែង​ការណ៍ Else ឬ​ElseIf បន្ទាប់​ត្រូវ​បាន​ប្រតិបត្តិ ។ បើ​លក្ខខណ្ឌ​មិន​ពិត ហើយ​សេចក្តី​ថ្លែង​ការណ៍ ElseIf នៅ​បន្ត នោះ LibreOffice Basic សាកល្បង​​លក្ខខណ្ឌ​បន្ទាប់ និង​ប្រតិបត្តិ​សេចក្តី​ថ្លែង​ការណ៍​បន្ត​បន្ទាប់ បើ​លក្ខខណ្ឌ​ពិត ។ ប្រសិន​បើ​មិន​ពិត កម្មវិធី​បន្ត​ជាមួយ​ទាំង​សេចក្តី​ថ្លែង​ការណ៍ ElseIf ឬ​Else បន្ទាប់ ។ សេចក្តី​ថ្លែង​ការណ៍​នៅ​បន្ត​ពី Else ត្រូវ​បាន​ប្រតិបត្តិ​តែក្នុង​ករណី​ដែល​​លក្ខខណ្ឌ​ដែល​បានសាកល្បង​មុន​ៗ​មិន​ពិត ។ បន្ទាប់​ពី​លក្ខខណ្ឌ​ទាំងអស់​ត្រូវ​បាន​វាយ​តម្លៃ ហើយ​សេចក្តី​ថ្លែង​ការណ៍​ដែល​ត្រូវ​គ្នា​ត្រូវ​បាន​ប្រតិបត្តិ កម្មវិធី​បន្ត​ជាមួយ​សេចក្តី​ថ្លែង​ការណ៍​ដែល​នៅ​បន្ទាប់​ពី EndIf ។

អ្នក​អាច​ត្រួត​សេចក្តី​ថ្លែង​ការណ៍ If...Then ច្រើន​លើ​គ្នា ។

Else និង​ElseIf សេចក្តី​ថ្លែង​ការណ៍​គឺ​ស្រេច​​​ចិត្ត ។

អ្នក​អាច​ប្រើ GoTo និង​GoSub ដើម្បី​លោត​ចេញ​ពី​បណ្តុំ If...Then ប៉ុន្តែ​មិន​ដើម្បី​លោត​ទៅ​ក្នុង​រចនា​សម្ព័ន្ធ If...Then ។

ឧទាហរណ៍​ដូច​ខាង​ក្រោម អាច​ឲ្យ​អ្នក​បញ្ចូល​ទាំង​​កាល​បរិច្ឆេទ​ផុត​កំណត់​នៃ​ផលិតផល និង​កំណត់​ប្រសិន​បើ​កាល​បរិច្ឆេទ​ផុត​កំណត់​ត្រូវ​បាន​ផ្តល់​ឲ្យ​ ។

## ឧទាហរណ៍ ៖

    Sub ExampleIfThenDate
    Dim sDate As String
    Dim sToday As String
        sDate = InputBox("Enter the expiration date (MM.DD.YYYY)")
        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 "The expiration date has passed"
        ElseIf sDate > sToday Then
            MsgBox "The expiration date has not yet passed"
        Else
            MsgBox "The expiration date is today"
        End If
    End Sub