Sortering en streng array i Visual Basic for Applications ( VBA ), er ikke så simpelt som i andre , nyere programmeringssprog. I VBA kan du sortere et array i stigende rækkefølge ved hjælp af et par "For ... Loops " og looping gennem hvert element i matrix . Denne metode er nyttig, når du har brug for at vise værdier tilbage til brugeren i stigende rækkefølge , for at give dine data et mere professionelt look. Ting du har brug
Microsoft Excel
Vis Flere Instruktioner
1
Launch Microsoft Excel , skal du klikke på "Udvikler " fanen, og klik derefter på "Visual Basic " for at åbne VB Editor. Opret en ny sub procedure ved at tilføje følgende kode : Hej
Private Sub SortVBAArray ()
2
Opret din string array og tilføje ti værdier til det:
Dim DataArray (10) As String
DataArray (0) = "John"
DataArray (1) = " Zackari "
DataArray (2) = " Sam " < br >
DataArray (3) = " Adam "
DataArray (4) = " Bob "
DataArray (5) = " Kitzia "
DataArray (6) = " Daniel "
DataArray (7) = " Oscar "
DataArray (8) = " Alan "
DataArray (9) = " Yarexli "
< br >
3
Ring sub procedure, som vil sortere værdierne i rækken, og afslutte proceduren : Hej
Ring sortArray ( DataArray )
End sub
< br > 4.
Opret sub procedure, som vil sortere strengen array i stigende rækkefølge, og vise resultaterne gennem Immediate -vinduet : Hej
sub sortArray ( tmpArray () As String )
Dim firstIdx As Integer
Dim lastIdx As Integer
Dim xCntr As Integer
Dim yCntr As Integer
Dim Temp As String
Dim List As String
firstIdx = LBound ( tmpArray )
lastIdx = UBound ( tmpArray )
xCntr = firstIdx Til lastIdx - 1
yCntr = xCntr + 1 Til lastIdx
p Hvis tmpArray ( xCntr ) > tmpArray ( yCntr ) Så
Temp = tmpArray ( yCntr )
tmpArray ( yCntr ) = tmpArray ( xCntr ) < br >
tmpArray ( xCntr ) = Temp
End If
Næste yCntr
Næste xCntr
xCntr = 1 Til UBound ( tmpArray )
List = Liste & vbCrLf & tmpArray ( xCntr )
Næste
Debug.Print List
End Sub
5 < p > Klik på det første sub procedure og tryk på " Ctrl" + "G " for at vise Immediate -vinduet. Tryk på " F5 " for at køre programmet og se resultaterne .