Pregunta

aquí hay una porción de código que estoy usando para activar / desactivar el botón A (que permite crear una nueva revisión) dependiendo del resultado.

Si los DCOUNT devuelve 0, significa que la próxima revisión aún no existe (y por lo tanto pueden ser creados) si los DCOUNT devuelve 1, significa que ya existe la próxima revisión (y por lo tanto el botón estará desactivado)

DCount("index_rit", "t_données_rit", "[RITn°]=" & Me.RITn°.Value & " AND [Revision]=" & Me.Revision.Value + 1)

Mi problema es que, por alguna razón, incluso si un registro corresponde a los valores introducidos en el Dcount, todavía devuelve 0.

He intentado tanto con la hormiga sin el [] para los campos.
También he intentado usar * en lugar de index_rit ...

¿Qué obtuve mal?

¿Fue útil?

Solución

consiguió. que era un problema de formato: RITn ° es de la forma xx-xx, así que tuve que ponerlo de esta manera:

"[RITn°]='" & Me.RITn°.Value & "' AND [Revision]=" & Me.Revision.Value + 1)

(añadido las comillas simples)

Otros consejos

Lo primero es que el DCont (y otras funciones ‘D’) se consideran generalmente que es un poco de una lata rendimiento. Intente reemplazarlo con esta función rápida. Usted sólo tiene que pasar que una consulta y ha de devolver el número de registros

Private Function GetRecordCount(strSearch as String) as Long
Dim rst As ADODB.Recordset
Dim RecCount As Long

Set rst = New ADODB.Recordset

With rst
   .ActiveConnection = CodeProject.Connection
   .CursorType = adOpenForwardOnly
   .LockType = adLockReadOnly
   .Source = strSearch
   .Open Options:=adCmdText
   if .EOF = true then
        RecCount=0
   else
        RecCount=.Collect(0)
   End If

   .Close
End With

GetRecordCount = RecCount

Set rst = Nothing

End Function

Esto utiliza ADO, pero podría / debería utilizar DAO si usted está usando tablas de acceso pero eso es otra cuestión para otro momento!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top