بۇ دەرسلىكتە پروگرامما مىساللىرىنىڭ ياردىمىدە VBA Array ، ھەر خىل سانلار گۇرپىسى ، ئۆزگىرىشچان سانلار گۇرپىسى ۋە سانلار گۇرپىسى ئۇسۇللىرى چۈشەندۈرۈلىدۇ:
دائىملىق VBA ئۆزگەرگۈچى مىقدار ساقلايدىغان ئورۇن ئىگىسى. يەككە سانلىق مەلۇماتنىڭ قىممىتى. ئۇنىڭ 1 دىن 1 گىچە مۇناسىۋىتى بار ، يەنى 1 قىممىتى 1 ئۆزگەرگۈچى مىقدار.
ھازىر ئوخشاش تۈردىكى كۆپ خىل قىممەتنى ساقلاشنى تەسەۋۋۇر قىلىپ بېقىڭ. كۆپ خىل ئۆزگەرگۈچى مىقدار قۇرۇشنىڭ ئورنىغا ، پەقەت بىرلا ئۆزگەرگۈچى مىقدارنى قۇرۇپ ، ئوخشاش تۈردىكى قىممەتلەرنى ساقلىسىڭىز بولىدۇ. بۇ ئۆزگەرگۈچى مىقدار ARRAY.
بۇ دەرسلىكتە ، سىز مۇقىم ۋە ھەرىكەتچانغا ئوخشاش ئوخشىمىغان تىپتىكى سانلار گۇرپىسى بىلەن بىللە VBA گۇرۇپپىسىنىڭ ، بىر ئۆلچەملىك ۋە ئىككى ئۆلچەملىك سانلار گۇرپىسىنىڭ نېمىلىكىنى بىلەلەيسىز. بىز يەنە VBA دا قوللىنىلىدىغان ھەر خىل سانلار گۇرپىسى ئۇسۇلىنى چۈشىنىمىز. مەسىلەن. ئوخشاش بىر سانلار گۇرپىسى ئۆزگەرگۈچى مىقدارغا. سىنىپتىكى بارلىق ئوقۇغۇچىلارنىڭ ئىسىملىرىنى بىر ئىستونغا تىزىش بىر ئۆلچەملىك سانلار گۇرپىسىنىڭ مىسالى. كۆرسىتىلگەندەك ئېلان قىلىندىسانلار گۇرپىسى تۆۋەندە كۆرسىتىلگەندەك ئېلان قىلىندى. ، 0 دىن 2 گىچە) پۈتۈن سان بولۇش سۈپىتى بىلەن
Q # 3) دائىرىنى قانداق قىلىپ Array غا ئايلاندۇرىمىز؟ دائىرىنى سانلار گۇرپىسىغا ئايلاندۇرۇش. بۇ كود Mys [10]
Sub Example() Dim Mys As Variant Mys = Application.Transpose(Range("A1:A10")) End Sub
Q # 4) VBA دىكى سانلار گۇرپىسى قانداق بولىدۇ؟
1 . 0> Dim arrayData (3) ۋارىيانت سۈپىتىدە
arrayData (0) = «Vikas Vipal»
arrayData (1) = 411234567890 #
ئىجرا قىلىش ۋاقتى ۋە قىزىل رەڭنى ساقلاش ئارقىلىق قىممەتنى قوغداش قاتارلىقلار مىساللار بىلەن مۇزاكىرە قىلىندى. ئاخىرىدا ، بىز بىر قانچە مەشغۇلاتنى قىلىشقا ياردەم بېرىدىغان Array ئۇسۇللىرىنى ئۆگەندۇق.
تۆۋەندە. تۆۋەندە بىر قانچە مىسال كۆرسىتىلدى> 0،2،3،3 ئورۇن بىلەن سانلار گۇرپىسى ھاسىل قىلىدۇ ، بۇ پۈتۈن ساننى قوبۇل قىلىدۇ.# 2) Dim MyArray2 (3) 3 دىن 3 گىچە بولغان ئارىلىقتىكى سانلار گۇرپىسى ھاسىل قىلىدۇ ، بۇلار String قىممىتىنى قوبۇل قىلىدۇ.
# 3) Dim MyArray2 (13 دىن 15 كىچە) قوش
13 يەنى 13 ، 14 ۋە 15 دىن باشلاپ سانلار گۇرپىسى ھاسىل قىلىدۇ ۋە قوش قىممەتنى قوبۇل قىلىدۇ. بىز تۆۋەن چەكنى 13 دەپ تىلغا ئالدۇق ، شۇڭلاشقا سانلار گۇرپىسى 0 دىن ئەمەس ، بەلكى 13-ئورۇندىن قىممەت تەقسىملەشكە باشلايدۇ.
ئەسكەرتىش: VB كودىنى ئېچىش Microsoft Excel نى يېزىش (قوللايدىغان نۇسخىسى Excel 2007 ، 2010 ، 2013 ، 2016 ، 2019). ئاچقۇچىلار بەتكۈچىگە يۆتكىڭ - & gt; Visual Basic (ئۇنىڭدىن باشقا Alt + F11 تېزلەتمىسىنى ئىشلىتىڭ). VB تەھرىرلىگۈچتە قىستۇر - & gt; مودۇلى ۋە تۆۋەندىكى كودنى چاپلاڭ.
ئوخشىمىغان تۈردىكى بايانلارنى كۆرسىتىدىغان تۆۋەندىكى تەرتىپنى ئويلاڭ. بۇ كودنى ئىجرا قىلىش ئۈچۈن. ئۇنداقتا بىز بىر ئاز ۋاقىت چىقىرىپ ، سانلار گۇرپىسىنىڭ نېمە ئۈچۈن ئىنتايىن مۇھىملىقىنى چۈشىنىپ باقايلىپروگرامما تىلى.
5 خىزمەتچىنىڭ مائاشىنى كىرگۈزۈشىڭىز كېرەك دەپ پەرەز قىلىڭ. دائىملىق ئۆزگەرگۈچى مىقدار ئارقىلىق بۇنى ئەمەلگە ئاشۇرۇش ئۈچۈن ، سىز 5 ئۆزگەرگۈچى مىقدارنى بارلىققا كەلتۈرۈشىڭىز كېرەك.
Public Sub RegularVariable() Dim shet As Worksheet Set shet = ThisWorkbook.Worksheets("Sheet1") ' Declare variable for each student Dim Emp1 As String Dim Emp2 As String Dim Emp3 As String Dim Emp4 As String Dim Emp5 As String ' Read student marks from cell Emp1 = shet.Range("A" & 2).Value Emp2 = shet.Range("A" & 3).Value Emp3 = shet.Range("A" & 4).Value Emp4 = shet.Range("A" & 5).Value Emp5 = shet.Range("A" & 6).Value ' Print student marks Debug.Print "Emp Name" Debug.Print Emp1 Debug.Print Emp2 Debug.Print Emp3 Debug.Print Emp4 Debug.Print Emp5 End Sub
ئەمدى Array ئۆزگەرگۈچى مىقدارنى ئىشلىتىپ ئوخشاش كودنى قۇرايلى. بىز پەقەت بارلىق خىزمەتچىلەرنىڭ ئىسمىنى ساقلايدىغان بىر گۇرۇپپا ئۆزگەرگۈچى مىقدارنى ئىشلەتتۇق. ئەگەر سىز يەنە 100 خىزمەتچىنىڭ ئىسمىنى قوشۇشىڭىز كېرەك دەپ پەرەز قىلايلى ، ئۇنداقتا سىز پەقەت سانلار گۇرپىسىنىڭ چوڭ-كىچىكلىكىنى ئۆزگەرتىپ ، يېڭى ئۆزگەرگۈچى مىقدار قۇرمىسىڭىزمۇ بولىدۇ.
بۇ كودتىكى قۇر سانىنى ئازايتىدۇ ۋە شۇ ئارقىلىق ئاسانلاشتۇرىدۇ. چۈشىنىشكە ۋە ئوقۇشقا بولىدۇ. ئۇنىڭ بىر نەچچە قۇر ۋە ستون بار بولۇپ ، ئادەتتە جەدۋەل شەكلىدە ئىپادىلىنىدۇ.
2 غۇۋا سانلار گۇرپىسىنىڭ خىتابنامىسى تۆۋەندىكىچە: LastIndex غا ، FirstIndex غا LastIndex) DataType سۈپىتىدە.
3 پەندە ئېرىشكەن 2 ئوقۇغۇچىنىڭ بەلگىسىنى ساقلاش مىسالىغا قاراڭ. شۇڭا بىز 2 قۇر ۋە 3 ئىستوننى ئۆز ئىچىگە ئالغان 2 ئۆلچەملىك سانلار گۇرپىسى قۇرىمىز. ياكى قورالبالدىقىدىكى ئىجرا كۇنۇپكىسىنى بېسىپ كودنى ئىجرا قىلىڭ.
2-قۇر ۋە 2-ئىستون
ۋە 3-ستون
مۇقىم سانلار گۇرپىسى
مۇقىم سانلار گۇرپىسى يەنە تۇراقلىق دەپمۇ ئاتىلىدۇ.سانلار گۇرپىسى مۇقىم تۆۋەن چەك ۋە ئۈستۈنكى چەككە ئىگە بولۇپ ، ئىجرا بولغاندا بۇ چوڭلۇقنى ئۆزگەرتكىلى بولمايدۇ. سانلار گۇرپىسىنىڭ چوڭلۇقى تىرناق ئىچىدىكى مەلۇم قىلىش جەريانىدا بەلگىلىنىدۇ. يۇقارقى مىساللارنىڭ ھەممىسى مۇقىم سانلار گۇرپىسى بولۇپ ، بىز بايانات ئېلان قىلىش جەريانىدا ئۇنىڭ چوڭ-كىچىكلىكىنى تىلغا ئالدۇق.
مۇقىم سانلار گۇرپىسى ئادەتتە سانلار گۇرپىسىنىڭ چوڭ-كىچىكلىكىنى جەزملەشتۈرگەندە ئىشلىتىلىدۇ. مەسىلەن ، بىر ھەپتە ئىچىدىكى كۈن سانى ، تۆۋەن چەك 0 ۋە يۇقىرى چەك 6 بولغان سانلار گۇرپىسى قۇرالايسىز ھەمدە ئۇنىڭ چوڭ-كىچىكلىكىنى ھەرگىز ئۆزگەرتمەيدىغانلىقىڭىزغا كاپالەتلىك قىلىڭ.
ھەرىكەتچان سانلار گۇرپىسى
ھەرىكەتچان سانلار گۇرپىسى ئىجرا قىلىش جەريانىدا سانلار گۇرپىسىنى چوڭايتالايدۇ. سانلار گۇرپىسىنىڭ چوڭ-كىچىكلىكىنى جەزملەشتۈرەلمىگەندە بۇلار پايدىلىق. ئالىي مەكتەپكە ئوقۇغۇچى قوبۇل قىلىشتا ، سىز قانچىلىك ئوقۇغۇچى قوبۇل قىلىدىغانلىقىنى جەزملەشتۈرەلمەسلىكىڭىز مۇمكىن ، شۇڭا لايىھىلەش ياكى ئېلان قىلىش ۋاقتىدىكى چوڭ-كىچىكلىكىنى بەلگىلىيەلمەيسىز.
ھەرىكەتچان گۇرۇپپىلارنىڭ خىتابنامىسى تۇراقلىق ھالەتكە ئوخشايدۇ. قۇرۇق تىرناق بىلەن سانلار گۇرپىسى. REDIM ، شۇنىڭغا دىققەت قىلىشىمىز كېرەككى ، تۆۋەنكى چەكنى ئۆزگەرتكىلى بولمايدۇ ، بىز پەقەت سانلار گۇرپىسىنىڭ ئۈستى تەرىپىنى ئۆزگەرتەلەيمىز.
Sub dynamicArray() Dim dynArray() As String Dim curdate As Date curdate = Now ReDim dynArray(2) ‘ Redim will help to change the array size during runtime dynArray(0) = "John" dynArray(1) = "Tom" dynArray(2) = "Tonny" MsgBox "Students Enrolled after " & curdate & " are “ & dynArray(0) & ", " & dynArray(1) & ", " & dynArray(2) End Sub
ھازىر ، بىز قىلالايدىغانلىقىمىزنى بىلىمىز. ئىجرا جەريانىدا سانلار گۇرپىسىنىڭ چوڭ-كىچىكلىكىنى ئۆزگەرتىڭ ، شۇڭلاشقا بىز سانلار گۇرپىسىنىڭ كەڭلىكىنى ئاشۇرۇشقا ئېھتىياجلىق بولغاندا ، ReDim جۈملىسىنى ئىشلىتەلەيمىز. سانلار گۇرپىسىنى يەنە بىر قېتىم چوڭايتىپ ، يېڭىنى قوشايلىئوقۇغۇچىنىڭ ئىسمى. چۈنكى Redim جۈملىسى يېڭى چوڭلۇقتىكى يېڭى سانلار گۇرپىسى قۇرۇپ ، كونا قىممەتلەرنى يوقىتىدۇ. ھەمدە بۇ ئارقىلىق سانلار گۇرپىسىنىڭ چوڭ-كىچىكلىكىنى ئاشۇرىمىز. ئاچقۇچلۇق سۆزنى ساقلاش ، ئىلگىرى كىرگۈزۈلگەن قىممەتلەر يوقاپ كەتمەيدۇ ۋە يېڭى قىممەت مۇۋەپپەقىيەتلىك ھالدا قوشۇلىدۇ. ئەمدى سانلار گۇرپىسىنى ۋارىيانت دەپ جاكارلاپ ، String ، چېسلا ، ئۇزۇن ، پۈتۈن سان قاتارلىق ھەر خىل سانلىق مەلۇماتلارنى بىرلا ساندا ساقلايلى.
مىسال:
Sub arrayVariant() Dim arrayData(3) As Variant arrayData(0) = "Vikram Vikrant" arrayData(1) = 411234567890# arrayData(2) = 38 arrayData(3) = "06-09-1972" MsgBox "Details of person " & arrayData(0) & " is " & " Phone No " & arrayData(1) & " ,Id " & arrayData(2) & " ,DOB " & arrayData(3) End Sub
VBA Array ئۇسۇلى
VBA گۇرۇپپىسىدا تۆۋەندە دېيىلگەندەك ئوخشىمىغان ئىقتىدارلارنى ئورۇنداشقا ياردەم بېرىدىغان بىر قانچە ئۇسۇل بار.
Sl. ياق | ئىسمى | گرامماتىكىسى | چۈشەندۈرۈش | ||||
---|---|---|---|---|---|---|---|
1 | ئاراي | Array (arglist) | دائىملىق ئۆزگەرگۈچى مىقدار ئۆزگەرگۈچى مىقدارنى Array غا ئايلاندۇرىدۇ. | ||||
2 | ئۆچۈرۈڭ | سانلار گۇرپىسىنى ئۆچۈرۈڭسانلار گۇرپىسى. | |||||
3 | IsArray | ئۆزگەرگۈچى مىقدار سانلار گۇرپىسى.||||||
4 | ئۇلىنىش> سانلار گۇرپىسىنىڭ ئەڭ تۆۋەن مۇشتەرى نى قايتۇرىدۇ. | ||||||
5 | Ubound | UBound (ArrayName ، [ئۆلچەم]) | سانلار گۇرپىسىنىڭ ئەڭ يۇقىرى مۇشتەرى نى قايتۇرىدۇ> | پارچىلاش (ئىپادىلەش ، [ئايرىش ، [چەك ، [سېلىشتۇرۇش]]])) 21> | 7 | قوشۇلۇڭ | قوشۇلۇڭ (sourcearray, [delimiter]) | .
8 | سۈزگۈچ | سۈزگۈچ. | سۈزگۈچ بىزنىڭ سانلار گۇرپىسىدىن كۆرسىتىلگەن مۇسابىقىنى ئىزدىشىمىزگە يول قويىدۇ. |
ئۇلارنىڭ ھەر بىرىنى مىسال بىلەن تەپسىلىي مۇلاھىزە قىلايلى.
# 1) Array
دائىملىق ئۆزگەرگۈچى مىقدارنى ئېلان قىلىپ ، ئۇنى سانلار گۇرپىسى قىلىپ ئىشلىتىمىز. دائىملىق ئۆزگەرگۈچى مىقدارنى سانلار گۇرپىسىغا ئۆزگەرتمەكچى بولسىڭىز ، تۆۋەندىكى مىسالدا كۆرسىتىلگەندەك ARRAY فۇنكسىيەسىنى ئىشلىتىشىمىز لازىم. . بۇ قىممەتلەر سانلار گۇرپىسىنىڭ ئېلېمېنتى سۈپىتىدە تەقسىم قىلىنغان.شۇڭلاشقا يۇقارقى مىسالدا ، قىممەتلەر varData (0) varData (2) varData (3) سۈپىتىدە قايتۇرۇلىدۇ.
# 2) ئۆچۈرۈڭ مۇقىم چوڭلۇقتىكى سانلار گۇرپىسى ھەمدە ھەرىكەتچان سانلار گۇرپىسى ئۈچۈن ئىچكى ساقلىغۇچ بوشلۇقىنى بوشىتىدۇ. تۆۋەندە. - مۇقىم سان ئۈچۈن: 2> بارلىق قىممەتلەر نۆل ئۇزۇنلۇققا قايتۇرۇلىدۇ.
- ھەرىكەتچان سانلار گۇرپىسى ئۈچۈن: سانلار گۇرپىسى ئىشلىتىدىغان ئىچكى ساقلىغۇچنى بوشىتىدۇ. :
Sub eraseExample() Dim NumArray(3) As Integer Dim decArray(2) As Double Dim strArray(2) As String NumArray(0) = 12345 decArray(1) = 34.5 strArray(1) = "Erase Function" Dim DynaArray() ReDim DynaArray(3) MsgBox " Values before Erase " & (NumArray(0)) & "," & (decArray(1)) & " , " & (strArray(1)) Erase NumArray Erase decArray Erase strArray Erase DynaArray ' Free the memory ' All values are erased. MsgBox " Values after Erase " & NumArray(0) & "," & decArray(1) & " , " & strArray(1) End Sub
ئۆچۈرۈش ئىقتىدارىنى ئىشلىتىشتىن بۇرۇن نەتىجە
ئۆچۈرۈلگەن
# 3) IsArray
بۇ ئىقتىدار بېرىلگەن كىرگۈزگۈچىنىڭ سانلار گۇرپىسى ياكى ئەمەسلىكىنى ئېنىقلاشقا ئىشلىتىلىدۇ. كىرگۈزۈلگەن ئۆزگەرگۈچى مىقدار راست بولسا ، ئۇ قايتىدۇ.
گرامماتىكىسى: IsArray (ئۆزگەرگۈچى ئىسمى)
مىسال:
Sub isArrayTest() Dim arr1, arr2 As Variant arr1 = Array("Jan", "Feb", "Mar") arr2 = "12345" MsgBox ("Is arr1 an Array : " & IsArray(arr1)) MsgBox ("Is arr2 an Array : " & IsArray(arr2)) End
بىرىنچى Msgbox نىڭ نەتىجىسى
ئىككىنچى msgbox نىڭ نەتىجىسى
# 4) Lbound
ئۇ Lbound فۇنكسىيەسىنىڭ تالاش-تارتىشى سۈپىتىدە كۆرسىتىلگەن سانلار گۇرپىسىنىڭ ئەڭ تۆۋەن مۇشتەرىلىكىنى قايتۇرىدۇ.
گرامماتىكىسى: LBound (ArrayName, [ئۆلچەم])
ArrayName بولسا سانلار گۇرپىسىنىڭ ئىسمى.سىز قايسى ئۆلچەمنى Lbound نى بەلگىلىمەكچى بولسىڭىز.
مىسال:
Sub lboundTest() Dim Result1, Result2, Result3 Dim ArrayValue(1 To 10, 5 To 15, 10 To 20) ' Declare array variables. Dim Arraywithoutlbound(10) Result1 = LBound(ArrayValue, 1) ' Returns 1. Result2 = LBound(ArrayValue, 3) ' Returns 10. Result3 = LBound(Arraywithoutlbound) MsgBox "Lowest subscript in first array " & Result1 & " lowest subscript in 3rd array " & Result2 & " Lowest subscript in Arraywithoutlbound " & Result3 End Sub
# 5) Ubound فۇنكىسىيەسىدە تالاش-تارتىش قىلىپ كۆرسىتىلگەن سانلار گۇرپىسىنىڭ ئۈستۈنكى مۇشتەرىلىكىنى قايتۇرىدۇ.
گرامماتىكىسى: UBound (ArrayName, [ئۆلچەم])
ArrayName بولسا سانلار گۇرپىسى. >
Sub UboundTest() Dim Result1, Result2, Result3 Dim ArrayValue(1 To 10, 5 To 15, 10 To 20) ' Declare array variables. Dim ArraywithoutUbound(10) Result1 = UBound(ArrayValue, 1) Result2 = UBound(ArrayValue, 3) Result3 = UBound(ArraywithoutUbound) MsgBox "Lowest subscript in first array " & Result1 & " lowest subscript in 3rd array " & Result2 & " Lowest subscript in Arraywithoutlbound " & Result3 End Sub
1> گرامماتىكىسى: بۆلۈش (ئىپادىلەش ، [ئايرىش ، [چەك ، [سېلىشتۇرۇش]]])) - ئىپادىلەش: تارماق ئېلېمېنتلارنى ھاسىل قىلىڭ. ئەگەر بۇ تىلغا ئېلىنمىغان بولسا ، بوشلۇق ئايرىش دەپ قارىلىدۇ.
- چەكلىمىسى: تارماق ئېلېمېنت ئىشلەپچىقىرىلىدۇ ، سىز ئوخشىمىغان سېلىشتۇرۇش تاللانمىلىرىنى ئىشلىتىپ نەتىجىنى سىناشقا بولىدۇ>
شۇڭلاشقا بۆلۈش ئىقتىدارى ئايرىشنى ئاساس قىلىپ پۈتۈن تىزمىنى تارماق بۆلەككە ئايرىيدۇ. ئەمما بىز بۇ چەكنى 3 دەپمۇ تىلغا ئالدۇق ، شۇڭا چەكتىن كېيىن تارماق ئېلېمېنت شەكىللەنمەيدۇ. شۇڭا ئاخىرقى چەكلىگۈچى -ئاتلاپ ئۆتۈپ كېتىدۇ.
Sub splitExample() Dim MyString As String Dim Result() As String Dim DisplayText As String MyString = "This is the example for-VBA-Split-Function" Result = Split(MyString, "-",3) MsgBox Result(0) & vbNewLine & Result(1) & vbNewLine & Result(2) & vbNewLine & Result(3) End Sub
# 7) قوشۇلۇڭ 3>
گرامماتىكىسى: قوشۇلۇڭ (sourcearray, [delimiter])
مەنبە: 3>
ئايرىغۇچ: قوشۇلغان ۋاقىتتا ھەر بىر قۇردىن كېيىن بېكىتىلگەن ئايرىش بەلگىسى قوشۇلىدۇ. قوشۇلدى ۋە \ ھەر بىر سۆزنىڭ ئارىسىغا قويۇلدى ، بىز \ ئېنىقلىغۇچى سۈپىتىدە تىلغا ئالغىنىمىزدەك.
# 8) سۈزگۈچ
سۈزگۈچ بىزگە يول قويىدۇ سانلار گۇرپىسىدىن بەلگىلەنگەن مۇسابىقىنى ئىزدەڭ. سۈزگۈچ ئۆلچىمىگە ئاساسەن ، بىر قاتار تىزمىلارنىڭ تارماق قىسمى قايتۇرۇلىدۇ.
گرامماتىكىسى: سۈزگۈچ (مەنبە ، ماسلاشتۇرۇش ، مىسال:
Sub filterExample() Dim Mystring As Variant Mystring = Array("Software Testing", "Testing help", "Software help") filterString = Filter(Mystring, "help") MsgBox "Found " & UBound(Mystring) - LBound(Mystring) + 1 & " words matching the criteria " End Sub
بۇ مىسال سۈزگۈچ ئىقتىدارى ئارقىلىق بارلىق سانلار گۇرپىسىدىكى «ياردەم» سۆزىنى ئىزدەيدۇ.
دائىم سورالغان سوئاللار
Q # 1) VBA دىكى سانلار گۇرپىسىنىڭ ئۇزۇنلۇقىغا قانداق ئېرىشىش كېرەك؟
جاۋاب: ئۇزۇنلۇققا ئېرىشىش سانلار گۇرپىسى ، بىز Ubound ئىقتىدارىنى ئىشلىتىمىز. بۇ ئىقتىدار بىزگە بەلگىلىك سانلار گۇرپىسىنىڭ ئۈستۈنكى مۇشتەرىلىكىنى بېرىدۇ.
Q # 2) VBA دا سانلار گۇرپىسىنى قانداق ئېلان قىلىش كېرەك؟ ئۆلچەملىك سانلار گۇرپىسى تۆۋەندە كۆرسىتىلگەندەك ئېلان قىلىندى. 3>
ئىككى ئۆلچەملىك
Sub eraseExample() Dim NumArray(3) As Integer Dim decArray(2) As Double Dim strArray(2) As String NumArray(0) = 12345 decArray(1) = 34.5 strArray(1) = "Erase Function" Dim DynaArray() ReDim DynaArray(3) MsgBox " Values before Erase " & (NumArray(0)) & "," & (decArray(1)) & " , " & (strArray(1)) Erase NumArray Erase decArray Erase strArray Erase DynaArray ' Free the memory ' All values are erased. MsgBox " Values after Erase " & NumArray(0) & "," & decArray(1) & " , " & strArray(1) End Sub
ئۆچۈرۈش ئىقتىدارىنى ئىشلىتىشتىن بۇرۇن نەتىجە
ئۆچۈرۈلگەن
# 3) IsArray
بۇ ئىقتىدار بېرىلگەن كىرگۈزگۈچىنىڭ سانلار گۇرپىسى ياكى ئەمەسلىكىنى ئېنىقلاشقا ئىشلىتىلىدۇ. كىرگۈزۈلگەن ئۆزگەرگۈچى مىقدار راست بولسا ، ئۇ قايتىدۇ.
گرامماتىكىسى: IsArray (ئۆزگەرگۈچى ئىسمى)
مىسال:
Sub isArrayTest() Dim arr1, arr2 As Variant arr1 = Array("Jan", "Feb", "Mar") arr2 = "12345" MsgBox ("Is arr1 an Array : " & IsArray(arr1)) MsgBox ("Is arr2 an Array : " & IsArray(arr2)) End
بىرىنچى Msgbox نىڭ نەتىجىسى
ئىككىنچى msgbox نىڭ نەتىجىسى
# 4) Lbound
ئۇ Lbound فۇنكسىيەسىنىڭ تالاش-تارتىشى سۈپىتىدە كۆرسىتىلگەن سانلار گۇرپىسىنىڭ ئەڭ تۆۋەن مۇشتەرىلىكىنى قايتۇرىدۇ.
گرامماتىكىسى: LBound (ArrayName, [ئۆلچەم])
ArrayName بولسا سانلار گۇرپىسىنىڭ ئىسمى.سىز قايسى ئۆلچەمنى Lbound نى بەلگىلىمەكچى بولسىڭىز.
مىسال:
Sub lboundTest() Dim Result1, Result2, Result3 Dim ArrayValue(1 To 10, 5 To 15, 10 To 20) ' Declare array variables. Dim Arraywithoutlbound(10) Result1 = LBound(ArrayValue, 1) ' Returns 1. Result2 = LBound(ArrayValue, 3) ' Returns 10. Result3 = LBound(Arraywithoutlbound) MsgBox "Lowest subscript in first array " & Result1 & " lowest subscript in 3rd array " & Result2 & " Lowest subscript in Arraywithoutlbound " & Result3 End Sub
# 5) Ubound فۇنكىسىيەسىدە تالاش-تارتىش قىلىپ كۆرسىتىلگەن سانلار گۇرپىسىنىڭ ئۈستۈنكى مۇشتەرىلىكىنى قايتۇرىدۇ.
گرامماتىكىسى: UBound (ArrayName, [ئۆلچەم])
ArrayName بولسا سانلار گۇرپىسى. >
Sub UboundTest() Dim Result1, Result2, Result3 Dim ArrayValue(1 To 10, 5 To 15, 10 To 20) ' Declare array variables. Dim ArraywithoutUbound(10) Result1 = UBound(ArrayValue, 1) Result2 = UBound(ArrayValue, 3) Result3 = UBound(ArraywithoutUbound) MsgBox "Lowest subscript in first array " & Result1 & " lowest subscript in 3rd array " & Result2 & " Lowest subscript in Arraywithoutlbound " & Result3 End Sub1> گرامماتىكىسى: بۆلۈش (ئىپادىلەش ، [ئايرىش ، [چەك ، [سېلىشتۇرۇش]]]))
- ئىپادىلەش: تارماق ئېلېمېنتلارنى ھاسىل قىلىڭ. ئەگەر بۇ تىلغا ئېلىنمىغان بولسا ، بوشلۇق ئايرىش دەپ قارىلىدۇ.
- چەكلىمىسى: تارماق ئېلېمېنت ئىشلەپچىقىرىلىدۇ ، سىز ئوخشىمىغان سېلىشتۇرۇش تاللانمىلىرىنى ئىشلىتىپ نەتىجىنى سىناشقا بولىدۇ>
شۇڭلاشقا بۆلۈش ئىقتىدارى ئايرىشنى ئاساس قىلىپ پۈتۈن تىزمىنى تارماق بۆلەككە ئايرىيدۇ. ئەمما بىز بۇ چەكنى 3 دەپمۇ تىلغا ئالدۇق ، شۇڭا چەكتىن كېيىن تارماق ئېلېمېنت شەكىللەنمەيدۇ. شۇڭا ئاخىرقى چەكلىگۈچى -ئاتلاپ ئۆتۈپ كېتىدۇ.
Sub splitExample() Dim MyString As String Dim Result() As String Dim DisplayText As String MyString = "This is the example for-VBA-Split-Function" Result = Split(MyString, "-",3) MsgBox Result(0) & vbNewLine & Result(1) & vbNewLine & Result(2) & vbNewLine & Result(3) End Sub
# 7) قوشۇلۇڭ 3>
گرامماتىكىسى: قوشۇلۇڭ (sourcearray, [delimiter])
مەنبە: 3>
ئايرىغۇچ: قوشۇلغان ۋاقىتتا ھەر بىر قۇردىن كېيىن بېكىتىلگەن ئايرىش بەلگىسى قوشۇلىدۇ. قوشۇلدى ۋە \ ھەر بىر سۆزنىڭ ئارىسىغا قويۇلدى ، بىز \ ئېنىقلىغۇچى سۈپىتىدە تىلغا ئالغىنىمىزدەك.
# 8) سۈزگۈچ
سۈزگۈچ بىزگە يول قويىدۇ سانلار گۇرپىسىدىن بەلگىلەنگەن مۇسابىقىنى ئىزدەڭ. سۈزگۈچ ئۆلچىمىگە ئاساسەن ، بىر قاتار تىزمىلارنىڭ تارماق قىسمى قايتۇرۇلىدۇ.
گرامماتىكىسى: سۈزگۈچ (مەنبە ، ماسلاشتۇرۇش ، مىسال:
Sub filterExample() Dim Mystring As Variant Mystring = Array("Software Testing", "Testing help", "Software help") filterString = Filter(Mystring, "help") MsgBox "Found " & UBound(Mystring) - LBound(Mystring) + 1 & " words matching the criteria " End Sub
بۇ مىسال سۈزگۈچ ئىقتىدارى ئارقىلىق بارلىق سانلار گۇرپىسىدىكى «ياردەم» سۆزىنى ئىزدەيدۇ.
دائىم سورالغان سوئاللار
Q # 1) VBA دىكى سانلار گۇرپىسىنىڭ ئۇزۇنلۇقىغا قانداق ئېرىشىش كېرەك؟
جاۋاب: ئۇزۇنلۇققا ئېرىشىش سانلار گۇرپىسى ، بىز Ubound ئىقتىدارىنى ئىشلىتىمىز. بۇ ئىقتىدار بىزگە بەلگىلىك سانلار گۇرپىسىنىڭ ئۈستۈنكى مۇشتەرىلىكىنى بېرىدۇ.
Q # 2) VBA دا سانلار گۇرپىسىنى قانداق ئېلان قىلىش كېرەك؟ ئۆلچەملىك سانلار گۇرپىسى تۆۋەندە كۆرسىتىلگەندەك ئېلان قىلىندى. 3>
ئىككى ئۆلچەملىك