Lizette, el problema si no me equivoco es el self de la línea
Código Delphi
[-]frmBuscarPaciente:=TfrmBuscarPaciente.Create(self);
ya que asignas como padre de frmBuscarPaciente a frmConsultar y al momento de destruirlo, automáticamente destruye a sus hijos, te recomiendo que cambies de Self a Application.
De igual manera dejaría y recomiendo el Close como la última instrucción de todas después del if, veo que lo repites no importa el resultado del diálogo modal
Código Delphi
[-]procedure TfrmConsultar.BitCancelarClick(Sender: TObject);
begin
if (not BitEliminar.Visible) and (not BitEditar.Visible)then
begin
if MessageDlg('¿Desea continuar consultando pacientes?', mtConfirmation, [mbYes,mbNo], 1)=mrYes then
begin
frmBuscarPaciente:=TfrmBuscarPaciente.Create(Application);
frmBuscarPaciente.Show
end
else
frmMenu.Show;
Close
end
end;