none
Ordem Alfabética? RRS feed

  • Pergunta

  • Estou utilizando o código a seguir, no Excel, mas Rio Grande do Sul e Rio Grande do Norte estão vindo antes de Rio de Janeiro. Como corrigir este problema, sem ter que alterar os nomes dos estados?

    Sub ordenarEstado()

    Dim ini, fim As Integer
    Dim i, j As Integer
    Dim menor As String
    ini = 0
    fim = cmbEstado.ListCount - 1 
    For i = ini To fim - 1
        For j = i + 1 To fim
            If cmbEstado.List(i) > cmbEstado.List(j) Then
                menor = cmbEstado.List(j)
                cmbEstado.List(j) = cmbEstado.List(i)
                cmbEstado.List(i) = menor
            End If
        Next j
    Next i
    End Sub


    • Editado diniz488 domingo, 27 de janeiro de 2013 17:43
    domingo, 27 de janeiro de 2013 17:42

Respostas

  • Os itens devem ser comparados, considerando todas as letras maiúsculas ou minúsculas:

    UCase(cmbEstado.List(i)) > UCase(cmbEstado.List(j))

    ou

    LCase(cmbEstado.List(i)) > LCase(cmbEstado.List(j))

    • Marcado como Resposta diniz488 segunda-feira, 28 de janeiro de 2013 07:43
    segunda-feira, 28 de janeiro de 2013 07:43