Primero, MIL DISCULPAS por no responderte en mi foro, la verdad entro poco y acabo de hacerlo a raiz de lo que publicaste aquí, voy a configurar en mi foro para que me envie emails. Vamos a tu tema:
Respondiendo la 1:
No uses execute para los Select. Si usas Execute no es necesario hacer un Set RS y por tanto no es necesario declararlo. Usa Execute para cuando quieras modificar la BD.
Supongo que CAMPO1 es algun control (supongo que un label, textbox o dtPicker)
Cambia esto:
Dim RS As New ADODB.Recordset
Set RS = dB.Execute("select * from BAUTISMO where FECHAB >= #" & CAMPO1 & "# AND FECHAB <= #" & CAMPO2 & "#")
Set DataGrid1.DataSource = RS
Por esto:
Dim rs As New ADODB.Recordset
sql = "select * from BAUTISMO where FECHAB >= '" & CAMPO1 & "' AND FECHAB <= '" & CAMPO2 & "'"
rs.Open sql, dB, 1, 1
Set DataGrid1.DataSource = RS
o esto:
Dim rs As New ADODB.Recordset
sql = "select * from BAUTISMO where FECHAB BETWEEN '" & CAMPO1 & "' AND '" & CAMPO2 & "'"
rs.Open sql, dB, 1, 1
Set DataGrid1.DataSource = RS
(abajo aclaro sobre CAMPO1 y CAMPO2)
Respondiendo la 2:
No uso el datagrid y quiza halla algo que checar alli, en todo caso revisa tu configuracion regional (aunque lo dudo).
Respondiendo la 3:
Supongo que te refieres a agregar Firebird (no a Firegrid, la confusion es que pueda que te refieras al Datagrid)
Guarda en la BD con este formato: YYYY/MM/DD, y recuperalo con el que te convenga. Ese formato no encierra ambigüedad.
Por ende, en la respuesta 1, tu CAMPO1 debe tener ese formato, sino cambialo asi:
CAMPO1 = Format(CAMPO1, "YYYY/MM/DD")
Y te olvidas de incompatibilidades.
Saludos
EDITO: No vayas a confundirte, los parámetros que envíes desde algún control son los que tu nombras CAMPO1 y CAMPO2, quizá allí esta también la confusión porque puede que tu te refieras a campos de la tabla, no lo creo pero bueno esa confusión tengo porque no usas prefijos en tu variable y asi poder intuir desde que control envias el dato.