Como ordenar um array de strings em VBA

Ordenar um array de strings em Visual Basic for Applications (VBA) não é tão simples como em outras linguagens de programação mais recentes. Em VBA , você pode ordenar um array em ordem usando um par de ascendentes "For ... Loops" e loop através de cada elemento da matriz. Este método é útil quando você precisa exibir valores para o usuário em ordem ascendente, para dar aos seus dados uma aparência mais profissional. Coisas que você vai precisar
Microsoft Excel
Mostrar mais instruções
1

Iniciar o Microsoft Excel , clique na aba "Desenvolvedor", depois clique em "Visual Basic" para abrir o Editor VB. Crie um novo sub-procedimento adicionando o seguinte código:

private SortVBAArray Sub ( )
2

Crie seu array de strings e adicione dez valores a ele:

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

Chame o subprocedimento que ordenará os valores na matriz e encerrará o procedimento:

Call sortArray ( dataArray )

End Sub
< br > 4

Create the sub procedure that will sort the array of strings in ascending order and display the results in the Run window:

sub sortArray ( tmpArray () As String)

Dim firstIdx As Integer

lastIdx As Integer

xCntr As Integer

yCntr As Integer

Temp Dim As String

Listar Dim As String

firstIdx = LBound ( tmpArray )

lastIdx = LimitSup ( tmpArray )

xCntr = firstIdx For lastIdx - 1 x

yCntr = xCntr + 1 Para lastIdx

If tmpArray ( xCntr ) > tmpArray ( yCntr ) Then

Temp = tmpArray ( yCntr )

tmpArray ( yCntr ) = tmpArray ( xCntr )

tmpArray ( xCntr ) = Temp

End If

Next yCntr

Next xCntr

xCntr = 1 To UBound ( tmpArray ) Photos

List = List & vbCrLf & tmpArray ( xCntr )

Next

Debug.Print List

End Sub
5

Clique no primeiro sub procedimento e pressione "Ctrl" + "G" para exibir a janela Executar. Pressione "F5" para executar o programa e ver os resultados.