• Initiateur de la discussion Initiateur de la discussion apdf1
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Re : Calculer textbox

Bonjour,

une autre présentation avec moins de boutons (on ne saisit que les points gagnants).
Si cela convient, il faudra ajouter les calculs des sommes.
 

Pièces jointes

Re : Calculer textbox

Re,

J'ai regardé le code de Forum et j'ai essayé d'adapter en ajoutant les calculs des sommes mais je n'y arrive pas, sinon il ne devrais pas avoir de probléme. Si tu peut adapter les calculs des sommes sa serais super.

Je reste a ta disposition

@+
Max
 
Re : Calculer textbox

Bonjour

Je voudrais remercier Forum que j'ai oublier de faire hier. Comme dit Laetitia code plus simple mais seul bemol j'ai essayé d'adapter en ajoutant les calculs des sommes mais je n'y arrive pas.
Si quelqu'un a une idée je le remercie d'avance

Bonne journée a tous

Max
 
Re : Calculer textbox

Bonjour,

l'évènement "Exit" n'étant pas disponible pour cette classe, on est obligé de passer par un autre évènement que "Change" (sinon calculs faits pour chaque chiffre saisi donc résultats incohérents).
Un doubleclic sur un score et le cumul se fait (Label rouge pour identifier le cas et éviter des oublis ou les répétitions).
Léti 🙂 pourra certainement me le confirmer ou me corriger.

Maintenant je ne sais pas à quoi servent certains contrôles donc je les ai supprimés.
 

Pièces jointes

Dernière édition:
Re : Calculer textbox

bonjour tous
effectivement ni EXIT & ENTER

on peut tenter un array
avec le super code de l'ami Forum🙂🙂

Code:
Public WithEvents txt As MSForms.TextBox
Private Sub txt_Change()
    Dim N As String, partie As Byte, Joueur As Byte, j As Byte, i, s As Variant
    N = txt.Name
    With UserForm1
        If txt > 0 Then
            Joueur = 1 + (Right(N, Len(N) - 1) + 3) Mod 4
            partie = Int((Right(N, Len(N) - 1) - 1) / 4) + 1
                For j = 1 To 4
                    If j <> Joueur And txt <> "" Then
                        .Controls("T" & j + 4 * (partie - 1)) = -CDbl(txt.Value) / 3
                    End If
                Next
        End If
For Each i In Array(.T1, .T5, .T9, .T13, .T17, .T21, .T25, .T29)
If i <> "" Then s = s + CDbl(i): .TO1 = s
Next i
s = 0
For Each i In Array(.T2, .T6, .T10, .T14, .T18, .T22, .T26, .T30)
If i <> "" Then s = s + CDbl(i): .TO2 = s
Next i
s = 0
For Each i In Array(.T3, .T7, .T11, .T15, .T19, .T23, .T27, .T31)
If i <> "" Then s = s + CDbl(i): .TO3 = s
Next i
s = 0
For Each i In Array(.T4, .T8, .T12, .T16, .T20, .T24, .T28, .T32)
If i <> "" Then s = s + CDbl(i): .TO4 = s
Next i
End With
End Sub
 
Re : Calculer textbox

Bonjour Laetitia, Forum

Je vous remercie Beaucoup vous êtes super ces nickel, juste une petite modif si je n'abuse pas trop comment peut on arrondir les chiffres a l'unité inferieur ex: si je met 343 il divise tar trois = -114.333333333333 j'aimerais plutôt 114.

Je vous remercie d'avance

Et bonne soirée et merci encore

Max
 
Re : Calculer textbox

Salut,

Tu peux ajouter Round dans la macro de Fo_rum. Et hop, ça t'arrondira tes angles. 🙂


Public WithEvents txt As MSForms.TextBox
Private Sub txt_Change()
Dim N As String, partie As Byte, Joueur As Byte, j As Byte, i, s As Variant
N = txt.Name
With UserForm1
If txt > 0 Then
Joueur = 1 + (Right(N, Len(N) - 1) + 3) Mod 4
partie = Int((Right(N, Len(N) - 1) - 1) / 4) + 1
For j = 1 To 4
If j <> Joueur And txt <> "" Then
.Controls("T" & j + 4 * (partie - 1)) = -Round(CDbl(txt.Value) / 3)
End If
Next
End If
For Each i In Array(.T1, .T5, .T9, .T13, .T17, .T21, .T25, .T29)
If i <> "" Then s = s + CDbl(i): .TO1 = s
Next i
s = 0
For Each i In Array(.T2, .T6, .T10, .T14, .T18, .T22, .T26, .T30)
If i <> "" Then s = s + CDbl(i): .TO2 = s
Next i
s = 0
For Each i In Array(.T3, .T7, .T11, .T15, .T19, .T23, .T27, .T31)
If i <> "" Then s = s + CDbl(i): .TO3 = s
Next i
s = 0
For Each i In Array(.T4, .T8, .T12, .T16, .T20, .T24, .T28, .T32)
If i <> "" Then s = s + CDbl(i): .TO4 = s
Next i
End With
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
268
Réponses
1
Affichages
230
Réponses
18
Affichages
508
Réponses
10
Affichages
387
Réponses
118
Affichages
3 K
Retour