Dam después de mucho revisar el archivo que te envíe encontré estos errores en el código
* primer hallazgo en los códigos
'------------------suma las celdas de la hoja cuando es palé o quiniela
For I = 2 To Range("F" & Rows.Count).End(xlUp).Row 'nuevo
If Cells(I, "C") = "N/A" Then
cellsC = ""
Else
cellsC = Cells(I, "C")
End If
If Mid(Cells(I, "F"), 1, 20) = Mid(ComboBox1, 1, 20) And _
Mid(Cells(I, "G"), 1, 6) = Mid(ComboBox2, 1, 6) And _
Cells(I, "B") = TextBox2 And _
cellsC = TextBox3 And _
Cells(I, "J") = fecha _
Or _
Mid(Cells(I, "F"), 1, 20) = Mid(ComboBox1, 1, 20) And _
Mid(Cells(I, "G"), 1, 6) = Mid(ComboBox2, 1, 6) And _
Cells(I, "B") = TextBox3 And _
cellsC = TextBox2 And _
Cells(I, "J") = fecha Then
If Mid(Cells(I, "G"), 1, 6) = "2-Pale" Then
totfact_pale = totfact_pale + Val(Cells(I, "E"))
totfact_pale_2 = totfact_pale_2 + Val(Cells(I, "E"))
totfact_pale_3 = totfact_pale_2 + Val(Cells(I, "E"))
Else
totfact_quin = totfact_quin + Val(Cells(I, "E"))
End If
End If
creo que debería cambiar esta linea
totfact_pale_3 = totfact_pale_2 + Val(Cells(I, "E"))
por esta
totfact_pale_3 = totfact_pale_3 + Val(Cells(I, "E"))
* Segundo hallazgo en los códigos
también las lineas que dan los mensajes me estoy dando cuenta de que el mensaje para totfact_pale_3 depende de si totfact_pale_2 pasa del limite.
Por lo que cuando la lotería es 3-... no va a llamar el mensaje que le pertenece por que totfact_pale_2 no pasa del limite ya que este es para la lotería 2-...
If Mid(ComboBox2, 1, 6) = "2-Pale" Then
'If totfact_pale + totfactlist_pale + Round(Val(TextBox4) * 1.1, 0) > limite_pale Then
If totfact_pale_2 + totfactlist_pale + Round(Val(TextBox4) * 1.1, 0) > limite_pale Then
'MsgBox "El valor de Pale va a exceder más de 50", vbCritical, "Error"
If MsgBox("El límite para los Pales es de " & limite_pale & " pesos por día. " & vbNewLine & _
"Si usted desea continuar va a exceder el límite de la lotería 2-LOTERIA NACIONAL 09:00 PM en: " & vbNewLine & _
totfact_pale_2 + totfactlist_pale + Round(Val(TextBox4) * 1.1, 0) - limite_pale & _
" pesos, que se convertirían en " & Format((totfact_pale_2 + totfactlist_pale + Round(Val(TextBox4) * 1.1, 0) - limite_pale) * 1000, _
"""RD$""#,##0.00") & " pesos" & vbNewLine & vbNewLine & "Desea proceder?", vbQuestion + vbYesNo) = vbYes Then
If totfact_pale_3 + totfactlist_pale + Round(Val(TextBox4) * 1.1, 0) > limite_pale Then
If MsgBox("El limite para los Pales es de " & limite_pale & " pesos por dia, si usted desea continuar va a exceder el limite de la lotería 3-LEIDSA QUIN. PALE 08:55 PM en " & _
totfact_pale_3 + totfactlist_pale + Round(Val(TextBox4) * 1.1, 0) - limite_pale & _
" pesos, que se convertirian en " & Format((totfact_pale_3 + totfactlist_pale + Round(Val(TextBox4) * 1.1, 0) - limite_pale) * 1000, _
"""RD$""#,##0.00") & " pesos,desea proceder?", vbQuestion + vbYesNo) = vbYes Then
clave1.Show
Else
TextBox4.SetFocus
End If
Else
clave1.Show
End If
Else
TextBox4.SetFocus
End If
Exit Sub
End If
End If
estos son hallazgos que encontré en los código.
si necesitas mas aclaraciones avisame, que quiero terminar de esta pregunta, cuando terminemos de arreglar bien el juego palé cierro esta pregunta y para los otros juegos voy a abrir otras preguntas para no abusar con todo este esfuerzo para una sola pregunta,
Gracias y abrazo