SORTING
Existe alguma função de ordenação numérica no VB ou tenho que implementar algum destes algoritmos existentes com o quicksort ou selection sort?
Grato,
Grato,
Não existe nenhuma função pronta embutida na linguagem, você terá que gastar seus dedos escrevendo uma!
José Niz
Boa Noite
Ele poderia trabalhar com RecordSet Desconectado e com o SORT poderia ordenar.
Agora, como é que você, Alien necessita desta implementação?
Poste o código aqui para termos uma idéia.
[txt-color=#008000]** Alien, tu veio de MARTE? [/txt-color]
[s41]
Boa Noite
Ele poderia trabalhar com RecordSet Desconectado e com o SORT poderia ordenar.
Agora, como é que você, Alien necessita desta implementação?
Poste o código aqui para termos uma idéia.
[txt-color=#008000]** Alien, tu veio de MARTE? [/txt-color]
[s41]
KPELLAJR, muito boa a sua alternativa.
[S42]

... ou passando os dados para uma listbox com a propriedade sort=enable...!
Alien
Eu montei um exemplo nesta linha de raciocÃnio para um outro colega faz um tempinho, ele deveria importar um TXT e ordenar, além de exibir em um FlexGrid, veja abaixo:
Como você vê acima, ele classificava pela Descrição e Código de Fornecedor, através do SORT.
Boa Sorte
[s92]
Eu montei um exemplo nesta linha de raciocÃnio para um outro colega faz um tempinho, ele deveria importar um TXT e ordenar, além de exibir em um FlexGrid, veja abaixo:
Private Sub Importa()
Dim i As Integer, sCaminho As String, sTemp As String
Dim lArq As Long, sLinha As String, lCont As Long, lPos As Long
Dim rsDesconectado As ADODB.Recordset
Set rsDesconectado = New ADODB.Recordset
rsDesconectado.Fields.Append "EAN", adVarChar, 18
rsDesconectado.Fields.Append "Descricao", adVarChar, 35
rsDesconectado.Fields.Append "CodigoFornecedor", adVarChar, 20
rsDesconectado.Fields.Append "NumeroLote", adVarChar, 10
rsDesconectado.Fields.Append "Validade", adVarChar, 4
rsDesconectado.Fields.Append "QuantColetada", adVarChar, 6
rsDesconectado.Fields.Append "QuantInformada", adVarChar, 6
rsDesconectado.Fields.Append "CodigoDivergencia", adVarChar, 4
rsDesconectado.Fields.Append "QuantDivergencia", adVarChar, 6
'rsDesconectado.Fields.Append "EAN", adVarChar, 18
rsDesconectado.ActiveConnection = Nothing
rsDesconectado.CursorLocation = adUseClient
rsDesconectado.Open
sCaminho = App.Path & "\Banco Dados\Laboratorio.txt"
lArq = FreeFile
'Abertura do Arquivo
Open sCaminho For Input As lArq
lCont = 1
lPos = 0
Do While Not EOF(lArq)
'Leitura das Linhas de Texto
Line Input #lArq, sLinha
'Monta os Registros
If lCont > 1 Then
If Left(sLinha, 1) = "2" Then Exit Do
'For lPos = 0 To Len(sLinha) Step 68
rsDesconectado.AddNew
rsDesconectado("EAN").Value = Mid(sLinha, lPos + 1, 18)
rsDesconectado("Descricao").Value = Mid(sLinha, lPos + 19, 35)
rsDesconectado("CodigoFornecedor").Value = Mid(sLinha, lPos + 55, 6)
rsDesconectado("NumeroLote").Value = Mid(sLinha, lPos + 62, 10)
rsDesconectado("Validade").Value = Mid(sLinha, lPos + 72, 4)
rsDesconectado("QuantColetada").Value = Mid(sLinha, lPos + 76, 6)
rsDesconectado("QuantInformada").Value = Mid(sLinha, lPos + 82, 6)
rsDesconectado("CodigoDivergencia").Value = Mid(sLinha, lPos + 88, 4)
rsDesconectado("QuantDivergencia").Value = Mid(sLinha, lPos + 92, 6)
rsDesconectado.Update
' Next
End If
lCont = lCont + 1
Loop
Close #lArq
rsDesconectado.Sort = ("Descricao ASC, CodigoFornecedor ASC")
Set MSHFlexGrid1.DataSource = rsDesconectado
rsDesconectado.Close
Set rsDesconectado = Nothing
MSHFlexGrid1.ColWidth(0) = 200
MSHFlexGrid1.ColWidth(1) = 1500
MSHFlexGrid1.ColWidth(2) = 3500
MSHFlexGrid1.ColWidth(3) = 1500
MsgBox "Importado e Classificado "
End Sub
Como você vê acima, ele classificava pela Descrição e Código de Fornecedor, através do SORT.
Boa Sorte
[s92]
Tópico encerrado , respostas não são mais permitidas