ACHAR O MAIOR VALOR DE UM INDEX
                    Galera é o seguinte, tenho uma Variável(x) com mais de 100 números
gostaria que o sistema retornasse o valor de X com a variável de valor mais alto.
Será que existe algum método especÃfico?
Vlw
                
            gostaria que o sistema retornasse o valor de X com a variável de valor mais alto.
Será que existe algum método especÃfico?
Vlw
                    faz um for com uma condição que resolve tudo...
                
            
                    foi o que tentei
fiz da seguinte maneira
Funciona, mas com strings com muitas variaveis o processo fica meio lento, gostaria de uma maneira de deixar tudo em ordem crescente.. comoem um listobox(ate pensei em usar um)
vlw
                
            fiz da seguinte maneira
dim A(100) as string
for x = 0 to 99
   for z = 0 to 99
      if a(z)>a(x) then goto nao
      msgbox a
      goto fim
   next z
nao:
next x
fim:
Funciona, mas com strings com muitas variaveis o processo fica meio lento, gostaria de uma maneira de deixar tudo em ordem crescente.. comoem um listobox(ate pensei em usar um)
vlw
                    2 FORs? Não precisa de tudo isso não! Faz assim:
                
            Dim Valor as Integer 'retorna o maior valor
Dim Posicao as Integer 'retorna a posição do maior valor
Dim Numeros(X) as Integer 'são os números a serem analizados. Altere o X para o valor correto
posicao = -1 'pra indicar que não foi inicializada ainda
For i = lbound(Numeros) to ubound(Numeros)
   if posicao = -1 then
       posicao = i
       valor = numeros(i)
   else
       if valor < numeros(i) then
           posicao = i
           valor = numeros(i)            
       end if
   end if
Next
Msgbox "O maior numero é " & valor & " na variavel de posicao " & posicao
                    Cara o maior valor? Sem complicação, é só usar a função UBound:
Só pra constar, se quiser pegar o menor valor é só usar o LBound, é fato que em 99,9% dos casos o menor valor é zero, mas vc pode declarar por exemplo Dim variavel(2 To 20), nesse caso o LBound(Variavel) retornaria 2 e o UBound(Variavel) retornaria 20, sendo assim vc pode pegar tb o nr de valores do array:
E ainda, se quiser um loop pra ler todos os itens, é só unir as duas funções num loop for:
é isso, qualquer dúvida poste...flw
                
            MsgBox UBound(Variavel)Só pra constar, se quiser pegar o menor valor é só usar o LBound, é fato que em 99,9% dos casos o menor valor é zero, mas vc pode declarar por exemplo Dim variavel(2 To 20), nesse caso o LBound(Variavel) retornaria 2 e o UBound(Variavel) retornaria 20, sendo assim vc pode pegar tb o nr de valores do array:
TotalValores = UBound(Variavel) - LBound(Variavel)E ainda, se quiser um loop pra ler todos os itens, é só unir as duas funções num loop for:
Dim i As Integer
For i = LBound(Variavel) To UBound(Variavel)
  Msgbox "O valor de posição " & i & " é igual à : " & Variavel(i)
Next ié isso, qualquer dúvida poste...flw
                    Vlw Harry Potter, era exatamente isso.. brigadão
Matioli, eu agradeço, mas o que eu queria era a relção dos valores da variaveis e nao dos numeros delas.. ams agradeço
flw
                
            Matioli, eu agradeço, mas o que eu queria era a relção dos valores da variaveis e nao dos numeros delas.. ams agradeço
flw
                        Tópico encerrado , respostas não são mais permitidas
                    
                
