Hay dos formas de hacerlo:
1- Este metodo de hacerlo te posicionará en el registro que deseas (sin usar código) pero sólo te mostrará los registros donde el campo en comun se repita, por ejemplo: si en la tabla principal seleccionas cualquier registro, en la segunda tabla se mostraran todos los registros que tengan el campo con que se relacionan y los demás no se mostrarán,
para hacer esto solo tienes que poner como masterSource en la segunda tabla al dataSource de la primera, luego das click en el espacio para masterFields de la misma tabla, das click en el botón con tres puntos para abrir un dialogo que te permitirá hacer la relación entre las tablas, solo hay que elegir el campo en comun de ambas tablas, luego en add y en ok, con eso basta, ya tienes relacionadas las dos tablas
2- Con este otro método localizas el registro de la segunda tabla pero mostrandose todos los registros de la segunda tabla:
en el evento OnCellClick del dbGrid que apunta a la tabla principal pones la linea
ADOTable2.Locate('campo de la segunda tabla a buscar', ADOTable1.FieldValues['campo de la tabla principal a buscar'],[]);
por ejemplo, quiero que en la tabla de Codigos de IVA me encuentre el respectivo para el cliente seleccionado
ADOTable2.Locate('codigo', ADOTable1.FieldValues['IVA'],[ ]);
Donde debes de cambiar 'campo de la segunda tabla a buscar' e 'valor de la tabla a buscar' por el campo en comun de tus tablas.
Ahora, si no tienes DbGrids para esto, solo hay que hacer lo mismo pero en el evento AfterScroll de la tabla principal pero con un agregado:
if ADOTable2.Active then
ADOTable2.Locate('codigo', ADOTable1.FieldValues['IVA'],[]);
NOTA: esto funciona solo cuando cambias de registro