ເນື້ອໃນ

# ຄຳສັ່ງ Sub

ກຳນົດຊັບຣູທີນ.

### ໄວຍາກອນ:

    [Private | Public] Sub name[(argument1 [As typename][, argument2[char][,...]])]
        ' ຄຳສັ່ງຕ່າງໆ
        [Exit Sub]
        ' ຄຳສັ່ງຕ່າງໆ
    End Sub

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

ຊື່ (name): ຊື່ຂອງຊັບຣູທີນ.

ອາກິວເມັນ (arguments): ພາລາມິເຕີທາງເລືອກທີ່ທ່ານຕ້ອງການສົ່ງໃຫ້ຊັບຣູທີນ.

##### ສ່ວນຍ່ອຍອາກິວເມັນ

          {[Optional [ByRef|ByVal]]|ParamArray} argument {{As typename|char}[ = expression]|[()]As Variant}

##### ພາລາມິເຕີ

Optional: ອາກິວເມັນນີ້ບໍ່ແມ່ນສິ່ງບັງຄັບ.

ByRef: ອາກິວເມັນຖືກສົ່ງຜ່ານແບບອ້າງອີງ. ByRef ແມ່ນຄ່າເລີ່ມຕົ້ນ.

ByVal: ອາກິວເມັນຖືກສົ່ງຜ່ານດ້ວຍຄ່າ (by value). ຄ່າຂອງມັນສາມາດຖືກແກ້ໄຂໂດຍຣູທີນທີ່ຖືກຮຽກໃຊ້.

char: ອັກສອນປະກາດປະເພດ.

typename: ຊື່ປະເພດຂໍ້ມູນພື້ນຖານ. ສາມາດລະບຸປະເພດທີ່ກຳນົດໂດຍໄລບຣາຣີ ຫຼື ໂມດູນໄດ້ເຊັ່ນກັນ.

= expression: ລະບຸຄ່າເລີ່ມຕົ້ນສຳລັບອາກິວເມັນ ໃຫ້ກົງກັບປະເພດທີ່ປະກາດໄວ້. ຈຳເປັນຕ້ອງມີ Optional ສຳລັບແຕ່ລະອາກິວເມັນທີ່ລະບຸຄ່າເລີ່ມຕົ້ນ.

ParamArray: ໃຊ້ ParamArray ເມື່ອບໍ່ຮູ້ຈຳນວນພາລາມິເຕີທີ່ແນ່ນອນ. ກໍລະນີປົກກະຕິຄືການໃຊ້ໃນຟັງຊັນທີ່ຜູ້ໃຊ້ກຳນົດເອງໃນ Calc. ການໃຊ້ ParamArray ຄວນຈຳກັດໄວ້ພຽງແຕ່ອາກິວເມັນສຸດທ້າຍຂອງຣູທີນເທົ່ານັ້ນ.

ການໃຊ້ ParamArray ຫຼື = expression ຈຳເປັນຕ້ອງວາງ Option Compatible ໄວ້ກ່ອນລະຫັດໂປຣແກຣມໃນໂມດູນ.

ເມື່ອໃຊ້ Option VBASupport 1, ອາກິວເມັນ Optional ທີ່ບໍ່ມີຄ່າເລີ່ມຕົ້ນ (= expression) ຈະຖືກກຳນົດຄ່າເລີ່ມຕົ້ນຕາມປະເພດຂໍ້ມູນຂອງມັນ, ຍົກເວັ້ນປະເພດ Variant.

##### ສ່ວນຍ່ອຍຊື່ປະເພດ (typename)

          {Boolean|Byte|Currency|Date|Double|Integer|Long|Object|Single|String|Variant}

##### ສ່ວນຍ່ອຍອັກສອນ (char)

          { % | & | ! | # | $ | @ }

### ຕົວຢ່າງ:

    Sub ExampleExit
    Dim sReturn As String
    Dim sListArray(10) As String
    Dim siStep As Single
        For siStep = 0 To 10 ' ຕື່ມຂໍ້ມູນທົດສອບໃສ່ໃນອາເຣ
            sListArray(siStep) = chr$(siStep + 65)
            MsgBox sListArray(siStep)
        Next siStep
        sReturn = LinSearch(sListArray(), "B")
        Print sReturn
    End Sub

    Function LinSearch( sList(), sItem As String ) As Integer
    Dim iCount As Integer
    ' Linsearch ຄົ້ນຫາ TextEntry ໃນ TextArray:sList():
    ' ຄ່າທີ່ສົ່ງຄືນແມ່ນດັດຊະນີຂອງລາຍການ ຫຼື 0 (Null)
        For iCount=1 To Ubound( sList() )
            If sList( iCount ) = sItem Then
                Exit For ' ພົບ sItem ແລ້ວ
            End If
        Next iCount
        If iCount = Ubound( sList() ) Then iCount = 0
        LinSearch = iCount
    End Function

ຫົວຂໍ້ທີ່ກ່ຽວຂ້ອງ

ພື້ນຖານຂອງຊັບຣູທີນ

ການນຳໃຊ້ ໂປຣຊີເຈີ, ຟັງຊັນ ແລະ ຄຸນສົມບັດ

ຄຳສັ່ງ Function

ຄຳສັ່ງ Property

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