A ver, vamos por partes.
Si en el ejemplo que te puse, colocas antes de el código que pones esta linea:
response.write control & " = " & request.QueryString(control)(indice)&"<br>"
verás los nombres y el valor relacionado de cada parámetro. Verás que el último parámetro es precisamente el botón y esas lineas son para que dicho parámetro no lo agregará. Fue una solución rápida ya que solo tenia un control que no era un checkbox.
No se cuántos parámetros tu mandas y cuántos de ellos no son checkbox, pudieras implementar algún método para discriminarlos y así evitar que se concatenen a la consulta. No se, una cadena con los nombre de los que no son Check's y un IF preguntando que el nombre del control NO ESTE en esa cadena (con el InStr).
Perdón por no hacerte un ejemplo un poco más elaborado, pero justo ahorita voy un poco apurado. Mañana será otro día
Saludos