Quiero dejar claro que no tengo ni idea de como es tu tabla, por eso tengo que generalizar. Si tengo la tabla Tiradas
Aunque veas 0 lo trato como texto
Con esta tabla puedo hacer una consulta
He preferido que veas como funcionaría el Siinm, pero se podría hacer poniendo Aciertos:[resultado), en criterios poner
Como "X" y agrupar por cuenta
El resultado
En el caso de un formulario, puedes hacerlo de mil maneras distintas. Por ejemplo, le pongo un combinado donde elijo el nombre del tirador, en este caso
En cuanto lo elijo
O bien
El código del combinado, al que he llamado Elegir, es
Private Sub Elegir_AfterUpdate()
Dim i As Byte, c As Byte
i = DCount("*", "tiradas", "tirador='" & Me.Elegir & "' and resultado=""X""")
c = DCount("*", "tiradas", "tirador='" & Me.Elegir & "' and resultado=""0""")
MsgBox "Este petardo(a) ha tenido " & i & " aciertos y " & c & " fallos", vbOKOnly + vbInformation, " Que lo sepas"
Aciertos = i
Fallos = c
End Sub
En función de como quieras verlo, pero ya te digo que hay tres mil formas, eliminas o dejas líneas en el código. En este caso he preferido que veas el uso de Dcount
En el caso de un informe, le añado dos cuadros de texto independientes Aciertos y Fallos
En el evento Al dar formato de la sección Encabezado Tirador le digo lo mismo, sólo que en este caso hago referencia al control Tirador
Private Sub EncabezadoDelGrupo0_Format(Cancel As Integer, FormatCount As Integer)
Aciertos = DCount("*", "tiradas", "tirador='" & Me.Tirador & "' and resultado=""X""")
Fallos = DCount("*", "tiradas", "tirador='" & Me.Tirador & "' and resultado=""0""")
End Sub
Y al abrirlo
Podrías ordenarlos por nombre, como está, por aciertos, por fallos( para expulsarlos de la competición y que no vuelvan)