ເນື້ອໃນ

# ຄຳສັ່ງ ReDim

ປະກາດ ຫຼື ກຳນົດຕົວປ່ຽນ ຫຼື ອາເຣໃໝ່.

### ໄວຍາກອນ:

    ReDim [Preserve] variable [(start To end)] [As type-name][, variable2 [(start To end)] [As type-name][,...]]

ທ່ານສາມາດເພີ່ມຄຳສຳຄັນ Preserve ເພື່ອຮັກສາຂໍ້ມູນພາຍໃນອາເຣທີ່ຖືກກຳນົດຂະໜາດໃໝ່. ReDim ສາມາດໃຊ້ໄດ້ສະເພາະໃນສ່ວນຍ່ອຍເທົ່ານັ້ນ.

### ພາຣາມິເຕີ:

variable: ຊື່ຕົວປ່ຽນ ຫຼື ຊື່ອາເຣໃດໆ.

typename: ຄຳສຳຄັນທີ່ໃຊ້ປະກາດປະເພດຂໍ້ມູນຂອງຕົວປ່ຽນ.

Byte: ຕົວປ່ຽນໄບຕ໌ (0-255)

Boolean: ຕົວປ່ຽນບູລີນ (True, False)

Currency: ຕົວປ່ຽນເງິນຕາ (ເງິນຕາທີ່ມີທົດສະນິຍົມ 4 ຕຳແໜ່ງ)

Date: ຕົວປ່ຽນວັນທີ

Double: ຕົວປ່ຽນທົດສະນິຍົມຄວາມລະອຽດສູງ (1,79769313486232 x 10E308 - 4,94065645841247 x 10E-324)

Integer: ຕົວປ່ຽນຈຳນວນຖ້ວນ (-32768 - 32767)

Long: ຕົວປ່ຽນຈຳນວນຖ້ວນຍາວ (-2,147,483,648 - 2,147,483,647)

Object: ຕົວປ່ຽນອອບເຈັກ (ໝາຍເຫດ: ຕົວປ່ຽນນີ້ຈະສາມາດກຳນົດຄ່າໄດ້ໂດຍການໃຊ້ Set ເທົ່ານັ້ນ!)

Single: ຕົວປ່ຽນທົດສະນິຍົມຄວາມລະອຽດດ່ຽວ (3,402823 x 10E38 - 1,401298 x 10E-45).

String: ຕົວປ່ຽນຂໍ້ຄວາມທີ່ປະກອບດ້ວຍຕົວອັກສອນສູງສຸດ 2,147,483,647 ຕົວ.

Variant: ຕົວປ່ຽນປະເພດວາຣຽນ (ສາມາດບັນຈຸຂໍ້ມູນໄດ້ທຸກປະເພດ). ຖ້າບໍ່ໄດ້ລະບຸຊື່ປະເພດ, ຕົວປ່ຽນຈະຖືກກຳນົດໃຫ້ເປັນປະເພດ Variant ໂດຍອັດຕະໂນມັດ ເວັ້ນເສຍແຕ່ວ່າຈະມີການໃຊ້ຄຳສັ່ງ DefBool ຫາ DefVar.

object: ອອບເຈັກ Universal Network (UNO) ຫຼື instance ຂອງອອບເຈັກ ClassModule.

char: ຕົວອັກສອນພິເສດທີ່ໃຊ້ປະກາດປະເພດຂໍ້ມູນຂອງຕົວປ່ຽນ.

ໃນ LibreOffice Basic, ທ່ານບໍ່ຈຳເປັນຕ້ອງປະກາດຕົວປ່ຽນຢ່າງຊັດເຈນ. ແນວໃດກໍຕາມ, ທ່ານຈຳເປັນຕ້ອງປະກາດອາເຣກ່ອນຈະນຳໃຊ້ພວກມັນ. ທ່ານສາມາດປະກາດຕົວປ່ຽນດ້ວຍຄຳສັ່ງ Dim, ໂດຍໃຊ້ເຄື່ອງໝາຍຈຸດ (,) ເພື່ອແຍກການປະກາດຫຼາຍອັນ. ເພື່ອປະກາດປະເພດຕົວປ່ຽນ, ໃຫ້ໃສ່ຕົວອັກສອນປະກາດປະເພດຕໍ່ທ້າຍຊື່ ຫຼື ໃຊ້ຄຳສຳຄັນຂອງປະເພດຂໍ້ມູນທີ່ກ່ຽວຂ້ອງ.

Declaration character | Variable type name
--- | ---
% | Integer
& | Long
! | Single
# | Double
$ | String
@ | Currency

array: ການປະກາດອາເຣ.

start, end: ຄ່າຕົວເລກ ຫຼື ຄ່າຄົງທີ່ທີ່ກຳນົດຈຳນວນສະມາຊິກ (NumberElements=(end-start)+1) ແລະ ຊ່ວງຂອງດັດຊະນີ.

start ແລະ end ສາມາດເປັນນິພົດຕົວເລກໄດ້ ຖ້າໃຊ້ ReDim ໃນລະດັບ procedure.

LibreOffice Basic ສະໜັບສະໜູນອາເຣແບບມິຕິດຽວ ຫຼື ຫຼາຍມິຕິ ເຊິ່ງຖືກກຳນົດໂດຍປະເພດຕົວປ່ຽນທີ່ລະບຸ. ອາເຣເໝາະສົມຖ້າໂປຣແກຣມມີລາຍການ ຫຼື ຕາຕະລາງທີ່ທ່ານຕ້ອງການແກ້ໄຂ. ຂໍ້ດີຂອງອາເຣແມ່ນສາມາດອ້າງອີງເຖິງແຕ່ລະສະມາຊິກຕາມດັດຊະນີ ເຊິ່ງສາມາດຂຽນເປັນນິພົດຕົວເລກ ຫຼື ຕົວປ່ຽນໄດ້.

ອາເຣຖືກປະກາດດ້ວຍຄຳສັ່ງ Dim. ມີຫຼາຍວິທີໃນການກຳນົດຊ່ວງດັດຊະນີ:

      Dim text(20) As String ' 21 ສະມາຊິກ ເລີ່ມແຕ່ 0 ຫາ 20
      Dim value(5 to 25) As Integer ' 21 ຄ່າ ເລີ່ມແຕ່ 5 ຫາ 25
      Dim amount(-15 to 5) As Currency ' 21 ຈຳນວນ (ລວມທັງ 0), ເລີ່ມແຕ່ -15 ຫາ 5
      REM ຟິວຂໍ້ມູນແບບສອງມິຕິ
      Dim table$(20,2) ' 63 ລາຍການ; ຈາກ 0 ຫາ 20 ໃນລະດັບ 1, ຈາກ 0 ຫາ 20 ໃນລະດັບ 2 ແລະ ຈາກ 0 ຫາ 20 ໃນລະດັບ 3.

ທ່ານສາມາດປະກາດອາເຣເປັນແບບໄດນາມິກໄດ້ ຖ້າມີຄຳສັ່ງ ReDim ກຳນົດຈຳນວນມິຕິໃນສ່ວນຍ່ອຍ ຫຼື ຟັງຊັນທີ່ມີອາເຣນັ້ນຢູ່. ໂດຍທົ່ວໄປ, ທ່ານສາມາດກຳນົດມິຕິອາເຣໄດ້ພຽງຄັ້ງດຽວ ແລະ ບໍ່ສາມາດແກ້ໄຂໄດ້. ພາຍໃນສ່ວນຍ່ອຍ, ທ່ານສາມາດປະກາດອາເຣດ້ວຍ ReDim. ທ່ານສາມາດກຳນົດມິຕິດ້ວຍນິພົດຕົວເລກເທົ່ານັ້ນ ເຊິ່ງຈະຊ່ວຍໃຫ້ໝັ້ນໃຈວ່າອາເຣມີຂະໜາດໃຫຍ່ເທົ່າທີ່ຈຳເປັນເທົ່ານັ້ນ.

## ຕົວຢ່າງ:

    Sub ExampleRedim
        Dim iVar() As Integer, iCount As Byte
        ReDim iVar(5) As Integer
        For iCount = 1 To 5
            iVar(iCount) = iCount
        Next iCount
        ReDim iVar(10) As Integer
        For iCount = 1 To 10
            iVar(iCount) = iCount
        Next iCount
    End Sub

ກະລຸນາສະໜັບສະໜູນພວກເຮົາ!