Si no estoy interpretandote mal, para poder hacer una consulta sobre cualquier campo tendrás que reconstruir la cláusula "WHERE" cada vez que quieras buscar por otro campo (ya que no se pueden usar parámetros para especificar campos). Lo mejor sería dividir la consulta en varias líneas para así sólo modificar la parte dinámica a través de su índice. Por ejemplo, imaginando que la cláusula "WHERE" estuviera en la segunda línea de la propiedad "SQL" (teniedo en la primera la parte "select...from..."):
Código Delphi
[-]
IBQuery1.SQL[1] := 'WHERE ' + ComboBox.Items[ComboBox.ItemIndex] + ' = :valor1';
...