|
Postada em 14/09/2007 14:46 hs
Dou um "select" com "order by" e jogo os resultados numa DataGrid. Mas queria que quando clicasse no título de cada campo na DataGrid que o "order by" se alterasse para que a ordem passasse a ser pelo campo onde foi dado o clique. Por exemplo, está ordenado por nomes e clico no campo "sobrenome", aí eu gostaria que ficasse ordenado pelo sobrenome e não mais pelo nome.
|
|
|
|
JOM
|
BOM JESUS DA LAPA BA - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 15/09/2007 17:09 hs
Ponha no eveto HeadClick do Datagrid: Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer) Adodc1.Recordset.Sort = Adodc1.Recordset.Fields(ColIndex).Name End Sub
Não precisa alterar nada neste código, apenas o nome do controle ADODC o resto é constante. Caso não esteja usando o controle vinculado é só colocar o nome de seu Recordset ao invés de adodc1, Rs_recordset.sort Belz?
|
|
|
|
Postada em 17/09/2007 16:59 hs
Para conexão eu uso: Public cnn As New ADODB.Connection cnn.Open "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=C:Meus documentoslamalama.mdb" E na RecordSet eu uso: Dim rst As New ADODB.Recordset rst.Open "SELECT * from tabela1", cnn, adOpenKeyset, adLockOptimistic E colocando o código, mesmo com alguns nomes modificados não está indo.
|
|
|
JOM
|
BOM JESUS DA LAPA BA - BRASIL
|
|
Postada em 17/09/2007 20:29 hs
Bom, sua conexão é igual à minha, agora diz aí, como vc está colocando o Código do HeadClick ? e como vc está inserindo os dados no DataGrid ?
|
|
|
|
Postada em 18/09/2007 08:33 hs
Declaro no form: Dim rst As New ADODB.Recordset E uso o código abaixo para mostrar na grid: rst.Open "SELECT * from tabela1", cnn, adOpenKeyset, adLockOptimistic Set DataGrid1.DataSource = rst
|
|
|
JOM
|
BOM JESUS DA LAPA BA - BRASIL
|
|
Postada em 20/09/2007 22:32 hs
Seu código deve ficar assim: Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer) rst.Sort = rst.Fields(ColIndex).Name End Sub Lembrando que seu recordset deve estar aberto, se vc efetuou o .close ou .nothing não irá funcionar, a não ser que abra novamente o recordset no evento HeadClick para depois colocar o código de ordem.
|
|
|