Deixa eu ver se entendi Ricardo.... vc tem um FlexGrid e vc faz um cadastro ou uma busca dentro deste FlexGrid certo? Vc quer q, por exemplo, ao buscar um registro dentro do seu FlexGrid o foco vá para aquela linha e q vc veja a linha já q o flexgrid tem q ter um certo tamanho né?....
Bom, de primeira pra fazer isso é recomendado um DBGrid ou DataGrid pois qdo vc faz essas ações de buscar, filtrar etc um determinado registro ele, o Grid, já foca na linha desejada mas tem um jeito de vc fazer isso no flex sim

...
segue código:
'Vamos por exemplo encontrar um registro dentro do flexgrid. Eu quero focá-lo e quero ver esta linha q foi focada
Dim Texto as String, I as Integer
Dim Rs as ADODB.Recordset
Dim DB as ADODB.Connection
'Código de conexão
.
.
.
'Encontrando o registro dentro do flexgrid com o botão de buscar
Private Sub CmdBuscaRegistro_Click()
On Error GoTo Erro
Texto = InputBox("Digite o nome:", "Consulta") 'Busca o campo da consulta desejado
rs.MoveF irst 'Para não perder o ponteiro no momento da busca
rs.Find "Nome Like '" & Texto & "*'"
With MSHFlexGrid1
'Fazendo uma busca dentro do flexgrid
For I = 1 To .Rows - 1 'linha 1 pois linha 0 é a do cabeçalho neste exemplo
.Row = I
If .Text = rs!Campo_da_Tabela Then
.ColSel = .Cols - 1 'Seleciona a linha do registro encontrado dentro do flexgrid
.TopRow = I 'Faz com q a linha encontrada seja colocada no topo do flexgrid. A linha no topo sempre q possível, não no caso das últimas linhas, mas sempre visíveis
Exit For
End If
Next I
End With
Erro:
Select Case Err.Number
Case 3021
MsgBox "Não foram encontrados registros!", vbCritical, "Erro"
Case 0
Case Else
MsgBox Err.Number & vbCrLf & Err.Description
End Select
End Sub
Bom, dá um pouco de trabalho mas a linha fica focada e vc poderá vê-la mesmo se vc estiver na primeira linha e o registro a ser encontrado for o último. Não se esqueça de colocar a coluna a ser pesquisada antes de buscar o registro => MSHFlexGrid1.col = 1 por exemplo
qq dúvida é só postar
t+