blz kra, vc me deu uma boa ajuda, aproveitei seu código e ainda fiz uma pequena modificação, para eliminar as redundâncias de ter q ficar escrevendo cada coluna de minha grid, ..., fiz dessa forma:
[CODE]
Private Sub Form_Load()
gTipoOrdenacaoGrid = "DESC"
End Sub
[/CODE]
[CODE]
Private Sub dgrConsCliente_HeadClick(ByVal ColIndex As Integer)
If gTipoOrdenacaoGrid = "ASC" Then
de.rsspCliente_sps.Sort = dgrConsCliente.Columns(ColIndex).DataField & " ASC"
gTipoOrdenacaoGrid = "DESC"
ElseIf gTipoOrdenacaoGrid = "DESC" Then
de.rsspCliente_sps.Sort = dgrConsCliente.Columns(ColIndex).DataField & " DESC"
gTipoOrdenacaoGrid = "ASC"
End If
End Sub
[/CODE]
fiz esse exemplo utilizando data environment (de) utilizando uma store procedure (spCliente_sps) do SQL Server 2000, uma variável global q tem q ser setada no carregamento do form, q irá determinar se a ordenação será crescente ou decrescente e um grid chamado: dgrConsCliente, ...
tenta usar as propriedades Columns(ColIndex).DataField , da sua grid, para q vc não precise ter q fazer um vetor para dizer qual é o nome do campo correspondente a cada coluna, ..., isso facilita muito!!!
de qq modo, obrigado pela força