Contents
Index 🔎︎

# ការ​ប្រើ​អថេរ

ដូច​ខាង​ក្រោម​ពណ៌នា​អំពី​មូលដ្ឋាន​នៃ​ការ​ប្រើ​អថេរ​ក្នុង LibreOffice Basic ។

## ការ​សន្មត​ឈ្មោះ សម្រាប់​ឈ្មោះ​អថេរ

ឈ្មោះ​អថេរ​អាច​មាន​តួ​អក្សរ​ច្រើន​បំផុត ២៥៥ តួ ។ តួ​អក្សរ​ទី​មួយ​នៃ​ឈ្មោះ​អថេរ ត្រូវ​តែ ជា​អក្សរ​ពី A-Z ឬ a-z ។ លេខ​ក៏​អាច​ត្រូវ​បាន​ប្រើ​ក្នុង​ឈ្មោះ​អថេរ ប៉ុន្តែ​សញ្ញា​វណ្ណយុត្ត និង​តួ​អក្សរ​ពិសេស​មិន​ត្រូវ​​បាន​​អនុញ្ញាត​​ទេ លើក​លែង​តែ​តួ​អក្សរ ("_") ។ ក្នុង LibreOffice Basic ឈ្មោះ​អថេរ​មិន​ប្រកាន់​អក្សរ​តូច​ធំ​ទេ ។ ឈ្មោះ​អថេរ​អាច​មាន​ដក​ឃ្លា ប៉ុន្តែ​ត្រូវ​តែ​ដាក់​សញ្ញា "[ ]" នៅ​ជុំ​វិញ ប្រសិន​បើ​ពួក​វា​មាន ។

ឧទាហរណ៍​អំពី​ឈ្មោះ​អថេរ ៖

          MyNumber=5
| ត្រឹមត្រូវ
          MyNumber5=15
| ត្រឹមត្រូវ
          MyNumber_5=20
| ត្រឹមត្រូវ
          My Number=20
| មិន​ត្រឹមត្រូវ អថេរ​ដែល​មាន​ដក​ឃ្លា ត្រូវ​តែ​ស្ថិត​នៅ​ក្នុង​សញ្ញា "[ ]"
          [My Number]=12
| ត្រឹមត្រូវ
          DéjàVu=25
| មិន​ត្រឹមត្រូវ តួ​អក្សរ​ពិសេស​មិន​ត្រូវ​បាន​អនុញ្ញាត
          5MyNumber=12
| មិន​ត្រឹមត្រូវ អថេរ​​មិន​​អាច​​ចាប់​ផ្តើម​​ដោយ​​លេខ​
          Number,Mine=12
| មិន​ត្រឹមត្រូវ សញ្ញា​វណ្ណយុត្ត​មិន​ត្រូវ​បាន​អនុញ្ញាត

## ការ​ប្រកាស​អថេរ

ក្នុង LibreOffice Basic អ្នក​មិន​ចាំបាច់​ប្រកាស​អថេរ​ជាក់លាក់ ។ ការ​ប្រកាស​អថេរ​មួយ​អាច​ត្រូវ​បាន​ធ្វើ​ដោយ​ប្រើ Dim ។ អ្នក​អាច​ប្រកាស​អថេរ​ច្រើន​ជាង​មួយ​នៅ​ពេល​តែ​មួយ ដោយ​បំបែក​ដោយ​សញ្ញា (,) ។ ដើម្បី​កំណត់​ប្រភេទ​អថេរ ប្រើ​សញ្ញា​ប្រភេទ​ប្រកាស​បន្ទាប់​ពី​ឈ្មោះ ឬ​ពាក្យ​គន្លឹះ​ដែល​សមរម្យ​ក៏​បាន ។

ឧទាហរណ៍​សម្រាប់​ការ​ប្រកាស​អថេរ ៖

          Dim a$
| ប្រកាស​អថេរ "a" ជា String
          Dim a As String
| ប្រកាស​អថេរ "a" ជា String
          Dim a$, b As Integer
| ប្រកាស​អថេរ​មួយ​ជា String និង​មួយ​ទៀត​ជា Integer
          Dim c As Boolean
| ប្រកាស c ជា​អថេរ​ប៊ូលីន ដែល​អាច ពិត ឬ​មិនពិត ។

វា​សំខាន់​ណាស់ នៅ​ពេល​ប្រកាស​អថេរ​ដែល​អ្នក​ប្រើតួ​អក្សរ​ប្រភេទ​ប្រកាស​​​គ្រប់​ពេល បើ​ទោះ​បី​ជា​វា​ត្រូវ​បាន​ប្រើ​ក្នុង​ការ​ប្រកាស ជំនួស​ឲ្យ​ពាក្យ​គន្លឹះ ។ ដូច្នេះ​ឃ្លា​ដូច​ខាង​ក្រោម​គឺ​មិន​ត្រឹមត្រូវ ៖

          Dim a$
| ប្រកាស "a" ជា String
          a="TestString"
| បាត់​ការ​ប្រកាស​ប្រភេទ ៖ "a$="

នៅ​ពេល​អ្នក​បាន​ប្រកាស​អថេរ​មួយ​ជា​ប្រភេទ​ពិត​ប្រាកដ​មួយ អ្នក​មិន​អាច​ប្រកាស​អថេរ​ដោយ​ប្រើ​ឈ្មោះ​ដូច​គ្នា​ម្តង​ទៀត​ជា​ប្រភេទ​ផ្សេង​បាន​ទេ !

### បង្ខំ​​​ឲ្យ​​មាន​ការ​ប្រកាស​អថេរ

ដើម្បី​បង្ខំ​ការ​ប្រកាស​អថេរ ប្រើ​ពាក្យ​បញ្ជា​ដូច​ខាង​ក្រោម ៖

    Option Explicit

សេចក្តី​ថ្លែង​ការណ៍​Option Explicit ត្រូវ​តែ​ជា​បន្ទាត់​ទី​មួយ​ក្នុង​ម៉ូឌុល នៅ​មុន SUB ទី​មួយ ។ ជា​ទូទៅ មាន​តែ​អារេ​ប៉ុណ្ណោះ​ដែល​ត្រូវ​ការ​ប្រកាស​ជាក់លាក់ ។ អថេរ​ផ្សេង​ទៀត​ទាំងអស់ ត្រូវ​បាន​ប្រកាស​ដោយ​យោង​ទៅ​តួ​អក្សរ​ប្រភេទ​ប្រកាស ឬប្រសិន​បើ​ត្រូវ​បាន​លុប​ចោល​ វា​ជា​ប្រភេទ​លំនាំដើម Single ។

## ប្រភេទ​អថេរ

LibreOffice Basic គាំទ្រ​អថេរ​បួន​ប្រភេទ ៖

- អថេរ ជា​លេខ អាច​ផ្ទុក​តម្លៃ​លេខ ។ អថេរ​ខ្លះ​ត្រូវ​បាន​ប្រើ​ដើម្បី​រក្សាទុក​ចំនួន​ធំ ឬ​តូច និង​ផ្សេង​ទៀត​ត្រូវ​បាន​ប្រើ សម្រាប់​ចំនួន​ទសភាគ ឬ​ប្រភាគ ។

- String អថេរ​ដែល​មាន​ខ្សែ​តួ​អក្សរ ។

- អថេរ ប៊ូលីន មាន​តម្លៃ​ពិត​ ឬ​មិន​ពិត​ ។

- វត្ថុ​ អថេរ​អាច​រក្សាទុក​វត្ថុ​ប្រភេទ​ខុស​ៗ​គ្នា ដូចជា​តារាង និង​ឯកសារ​ក្នុង​​ឯកសារ​​មួយ ។

### អថេរ​ចំនួន​គត់

អថេរ​​ចំនួន​គត់​ស្ថិត​នៅ​ចន្លោះ​ពី -32768 ដល់ 32767 ។ ប្រសិន​បើ​អ្នក​ផ្តល់​តម្លៃ​ទសភាគ​ទៅ​អថេរ​ចំនួន​គត់​មួយ ខ្ទង់​ទសភាគ​ត្រូវ​បាន​បង្គត់​ទៅ​ចំនួន​គត់​បន្ទាប់ ។ អថេរ​ចំនួន​គត់​ត្រូវ​បាន​គណនា​យ៉ាង​លឿន​ក្នុង​បែបបទ និង​សម​ស្រប​សម្រាប់​អថេរ​រាប់​ក្នុង​រង្វិល​ជុំ ។ អថេរ​ចំនួន​គត់​​ត្រូវ​ការ​អង្គ​ចងចាំ​តែ ២ បៃ​ប៉ុណ្ណោះ ។ "%" គឺ​ជា​តួ​អក្សរ​ប្រភេទ​ការ​ប្រកាស ។

    Dim Variable%
    Dim Variable As Integer

### អថេរ​ចំនួន​គត់​ធំ

អថេរ​ចំនួន​គត់​ធំ​ស្ថិត​នៅ​ចន្លោះ​ពី -2147483648 ដល់ 2147483647 ។ ប្រសិន​បើ​អ្នក​ផ្តល់​តម្លៃ​ទសភាគ​ទៅ​អថេរ​ចំនួន​គត់​ធំ ខ្ទង់​ទសភាគ​ត្រូវ​បាន​បង្គត់​ទៅ​ចំនួន​គត់​បន្ទាប់ ។ អថេរ​ចំនួន​គត់​ធំ​ត្រូវ​បាន​គណនា​យ៉ាង​លឿន​ក្នុង​បែបបទ និង​សម​ស្រប​សម្រាប់​អថេរ​រាប់​ក្នុង​រង្វិល​ជុំ សម្រាប់​តម្លៃ​ធំ​ៗ ។ អថេរ​ចំនួន​គត់​ធំ​ទាមទារ​អង្គ​ចងចាំ ៤ បៃ ។ "&" គឺ​ជា​តួ​អក្សរ​ប្រភេទ​ការ​ប្រកាស ។

    Dim Variable&
    Dim Variable As Long

### អថេរ​គោលដប់

អថេរ​គោលដប់​អាច​យក​លេខ​វិជ្ជមាន អវិជ្ជមាន ឬ​សូន្យ ។ ភាព​ត្រឹមត្រូវ​គឺ​មាន​រហូត​ដល់ ២៩ តួលេខ ។

អ្នក​អាច​ប្រើ​សញ្ញា (+) ឬ (-) ជា​បុព្វបទ​សម្រាប់​លេខ​គោលដប់ (ដោយ​មាន ឬ​គ្មាន​ចន្លោះ) ។

ប្រសិន​បើ​លេខ​គោលដប់​ត្រូវ​បាន​កំណត់​ជាអថេរ​ចំនួន​គត់ LibreOffice Basic បង្គត់​ចំនួន​ចុះ ឬ​ឡើង ។

### អថេរ​តែ​មួយ

អថេរ​តែ​មួយ​អាច​ទទួល​​យក​តម្លៃ​វិជ្ជមាន ឬ​អវិជ្ជមាន​ដែល​ស្ថិត​នៅ​ចន្លោះ​ពី 3.402823 x 10E38 ដល់ 1.401298 x 10E-45 ។ អថេរ​តែ​មួយ​គឺ​ជា​អថេរ​ពិត ដែល​ចំនួន​ខ្ទង់​ទសភាគ​ថយ​នៅ​ពេល​ផ្នែក​មិន​មែន​ទសភាគ​នៃ​ចំនួន​កើន​ឡើង ។ អថេរ​តែ​មួយ​សម​ស្រប សម្រាប់​ការ​គណនា​គណិត​វិទ្យា​ដែល​មាន​ចំនួន​ខ្ទង់​មធ្យម ។ ការ​គណនា​ទាមទារ​ពេល​ច្រើន​ជាង​អថេរ​ចំនួន​គត់ ប៉ុន្តែ​លឿន​ជាង​ការ​គណនា​ជាមួយ​អថេរ​ទ្វេ​ ។ អថេរ​តែ​មួយ​ទាមទារ​សិតិ ៤ បៃ ។ តួ​អក្សរ​ប្រភេទ​ការ​ប្រកាស​គឺ "!" ។

    Dim Variable!
    Dim Variable As Single

### អថេរ​ទ្វេ

អថេរ​ទ្វេ​អាច​ទទួល​យក​តម្លៃ​វិជ្ជមាន ឬ​អវិជ្ជមាន​ដែល​ស្ថិត​នៅ​ចន្លោះ​ពី 1.79769313486232 x 10E308 ដល់ 4.94065645841247 x 10E-324 ។ អថេរ​ទ្វេ​ជា​អថេរ​ទសភាគ ដែល​ចំនួន​ខ្ទង់​ទសភាគ​ថយ​ចុះ​នៅ​ពេល​ផ្នែក​មិន​មែន​ទសភាគ​នៃ​លេខ​កើន​ឡើង ។ អថេរ​ទ្វេ​សមស្រប​សម្រាប់​ការ​គណនា​ច្បាស់លាស់ ។ ​ការ​គណនា​ត្រូវ​ការ​​​ពេល​ច្រើន​​ជាង​មួយ​ដង​​សម្រាប់​អថេរ​តែ​មួយ​ ។ អថេរ​ទ្វេ​ទាមទារ​អង្គ​ចងចាំ ៨ បៃ ។ តួ​អក្សរ​ប្រភេទ​ការ​ប្រកាស​គឺ "#" ។

    Dim Variable#
    Dim Variable As Double

### អថេរ​រូបិយប័ណ្ណ

អថេរ​រូបិយប័ណ្ណ​ត្រូវ​បាន​រក្សា​ទុក​ខាង​ក្នុង​ជា​ចំនួន ៦៤ ប៊ីត (៨ បៃ) និង​បាន​​បង្ហាញ​ជា​ចំនួន​ទសភាគ​ថេរ​មួយ​ដែល​មាន​ខ្ទង់​មិន​មែន​ទសភាគ ១៥ ខ្ទង់ និង​ខ្ទង់​ទសភាគ ៤ ខ្ទង់ ។ តម្លៃ​ស្ថិត​នៅ​ចន្លោះ​ពី -922337203685477.5808 ដល់ +922337203685477.5807 ។ អថេរ​រូបិយប័ណ្ណ​ត្រូវ​បាន​ប្រើ​ដើម្បី​គណនា​តម្លៃ​រូបិយប័ណ្ណ​ដែល​មាន​ចំនួន​ខ្ទង់​ទសភាគ​ខ្ពស់ ។ តួ​អក្សរ​ប្រភេទ​ការ​ប្រកាស​គឺ "@" ។

    Dim Variable@
    Dim Variable As Currency

### អថេរ​ខ្សែ​អក្សរ

អថេរ​ខ្សែ​អក្សរ​អាច​ផ្ទុក​ខ្សែ​អក្សរ​បាន​រហូត​ដល់​ទៅ​ ៦៥,៥៣៥ តួ​អក្សរ ។ តួ​អក្សរ​នីមួយ​ៗ​ត្រូវ​បាន​រក្សា​ទុក​ជា​តម្លៃ​យូនីកូដ​ដែល​ត្រូវ​គ្នា ។ អថេរ​ខ្សែ​អក្សរ​គឺ​សម​ស្រប​សម្រាប់​ប្រតិបត្តិ​ពាក្យ​ក្នុង​កម្មវិធី និង​សម្រាប់​រក្សា​ទុក​ជា​បណ្តោះ​អាសន្ន​នូវ​តួ​អក្សរ​មិន​អាច​បោះពុម្ព​នា​នា ដែល​មាន​ប្រវែង​អតិ​បរមា​រហូត​ដល់ ៦៤ គីឡូ​បៃ ។ អង្គ​ចងចាំ​ដែល​​ត្រូវ​ការ​សម្រាប់​រក្សា​ទុក​អថេរ​ខ្សែ​អក្សរ គឺ​អាស្រ័យ​លើ​ចំនួន​តួ​អក្សរ​ក្នុង​អថេរ ។ តួ​អក្សរ​ប្រភេទ​ការ​ប្រកាស​គឺ "$" ។

    Dim Variable$
    Dim Variable As String

### អថេរ​ប៊ូលីន

អថេរ​ប៊ូលីន​ទុក​តែ​តម្លៃ​មួយ​នៃ​តម្លៃ​ពីរ ៖ ពិត ឬ​មិនពិត ។ លេខ ០ វាយតម្លៃ​ជា មិនពិត គ្រប់​តម្លៃ​ផ្សេង​ទៀត​វាយតម្លៃ​ជា ពិត ។

    Dim Variable As Boolean

### អថេរ​កាល​បរិច្ឆេទ

អថេរ​កាល​បរិច្ឆេទ​អាច​មាន​តែ​តម្លៃ​កាល​បរិច្ឆេទ និង​ពេល​វេលា​ដែល​រក្សា​ទុក​ក្នុង​ទ្រង់ទ្រាយ​ខាង​ក្នុង ។ តម្លៃ​ដែល​បាន​ផ្តល់​ទៅ​អថេរ​កាល​បរិច្ឆេទ​ជាមួយ Dateserial, Datevalue, Timeserial ឬTimevalue ត្រូវ​បាន​បម្លែង​ដោយ​ស្វ័យ​ប្រវត្តិ​ទៅ​ជា​ទ្រង់ទ្រាយ​ខាង​ក្នុង ។ អថេរ​កាល​បរិច្ឆេទ​ត្រូវ​បាន​បម្លែង​ជា​លេខ​ធម្មតា​ដោយ​ប្រើ​អនុគមន៍ Day, Month, Year ឬHour, Minute, Second ។ ទ្រង់ទ្រាយ​ខាង​ក្នុង​អាច​ធ្វើ​ឲ្យ​ប្រើ​បាន​ការ​ប្រៀបធៀប​នៃ​តម្លៃ​កាល​បរិច្ឆេទ​/​ពេល​វេលា ដោយ​គណនា​ភាព​ខុស​គ្នា​រវាង​ចំនួន​ពីរ ។ អថេរ​ទាំង​នេះ​អាច​ត្រូវ​បាន​ប្រកាស​តែ​ជាមួយ​ពាក្យ​គន្លឹះ Date ប៉ុណ្ណោះ ។

    Dim Variable As Date

## តម្លៃ​​អថេរ​ដំបូង​

នៅ​ពេល​អថេរ​ត្រូវ​បាន​ប្រកាស វា​ត្រូវ​បាន​កំណត់​ដោយ​ស្វ័យ​ប្រវត្តិ​ទៅ​ជា​តម្លៃ "Null" ។ ចំណាំ​​ការ​​​សន្មត​​​ដូច​ខាង​ក្រោម ៖​

អថេរ ជា​លេខ ត្រូវ​បាន​ផ្តល់​តម្លៃ "0" ដោយ​ស្វ័យ​ប្រវត្តិ នៅ​ពេល​ពួក​វា​ត្រូវ​បាន​ប្រកាស ។

អថេរ​កាល​បរិច្ឆេទ ត្រូវ​បាន​ផ្តល់​តម្លៃ​ខាង​ក្នុង​គឺ 0 ដែល​សមមូល​ទៅ​នឹង​ការ​បម្លែង​តម្លៃ​ជា "0" ជាមួយ​អនុគមន៍ Day, Month, Year ឬ Hour, Minute, Second ។

អថេរ String ត្រូវ​បាន​ផ្តល់​តម្លៃ​ខ្សែ​អក្សរ​ទទេ ("") នៅ​ពេល​ពួក​វា​ត្រូវ​បាន​ប្រកាស ។

## អារេ

LibreOffice Basic ស្គាល់​អារេ​មួយ ឬ​ច្រើន​វិមាត្រ ដែល​កំណត់​ដោយ​​ប្រភេទ​អថេរ​បាន​បញ្ជាក់​​ ។ អារេ​គឺ​សមរម្យ សម្រាប់​កែ​សម្រួល​បញ្ជី និង​តារាង​ក្នុង​កម្មវិធី ។ ធាតុ​នីមួយ​ៗ​នៃ​អារេ អាច​ត្រូវ​បាន​ផ្តល់​ទីតាំង​តាម​រយៈ​សន្ទស្សន៍​ជា​លេខ ។

អារេ ត្រូវ​តែ ប្រកាស​ដោយ​ប្រើ Dim ។ មាន​វិធី​ជា​ច្រើន ដើម្បី​កំណត់​ជួរ​សន្ទស្សន៍​នៃ​អារេ​មួយ ៖

          Dim Text$(20)
| 21​ ​ធាតុ​ បង់​លេខ​រៀង​ចាប់ពី 0 ដល់ 20
          Dim Text$(5,4)
| 30 ធាតុ (ម៉ាទ្រីស​ដែល​មាន​ធាតុ 6 x 5)
          Dim Text$(5 To 25)
| 21 ធាតុ បង់​លេខ​រៀង​ចាប់ពី 5 ដល់ 25
          Dim Text$(-15 To 5)
| 21 ធាតុ (រួម​ទាំង 0) បង់លេខរៀង​ចាប់ពី -15 ដល់ 5

ជួរ​សន្ទស្សន៍​អាច​រួមបញ្ចូល​នូវ​ចំនួន​វិជ្ជមាន ក៏​ដូចជា​ចំនួន​អវិជ្ជមាន ។

## ថេរ

Constants មាន​តម្លៃ​ថេរ ។ ពួក​វា​ត្រូវ​បាន​កំណត់​តែ​ម្តង​ប៉ុណ្ណោះ​ក្នុង​កម្មវិធី និង​មិន​អាច​កំណត់​ម្តង​ទៀត​នៅ​ពេល​ក្រោយ ៖

    Const ConstName=Expression