Estoy de acuerdo con que es la mejor manera, mas sencilla y realmente mas ordenada, pero tambien puedes tener todo eso en un ciclo, como:
Cita: const_NumCriterios = 10 //Solo es un ejemplo, los criterios puedes tenerlos de forma dinamica.
SqlWhere = ""
for i = 0 to const_NumCriterios
criterio = "criterio_campo" & Cstr(i+1)
valor = request.form(criterio)
if valor <> "" then
SqlWhere = SqlWhere & criterio & " = " & valor
if i < const_NumCriterios
SqlWhere = SqlWhere & ", "
end if
end if
next
Sql = "select campo from tabla where " & SqlWhere
Claro, en tu programacion necesitaras cosas como que los campos de criterio se llamen igual, tal como criterio1, criterio2, etc, bueno, si tienes campos como, Nombre, Edad, etc... pues no funcionara, si no puedes conciliar que los campos tengan el mismo nombre y ademas los campos de tu base de datos tampoco, pues tendras que hacerlo todo unos por uno, en lo cual estoy de acuerdo.
Suerte!!