Déterminer les valeurs de TextBox hors tolérances

Bonjour à tous,

Je suis presque sur le point de terminer mon application de Contrôle de réception mais il me manque la dernière marche à franchir !

En effet, je voudrais proposer un écran à mon contrôleur pour lui indiquer le nombre de côtes hors tolérances saisies.

Par souci de confidentialité, je ne peux pas vous livrer le tableur de mon entreprise ... mais j'ai des copies d'écran !!

Voici une interface à base de Textbox où il doit saisir ses relevés de mesure :

1er ecran

Interprétations :

Pour la côte de 1080 mm, voici les mesures que le contrôleur devra saisir.

En cliquant sur "Passer aux résultats", voici l'écran que ca lui propose :

2eme ecran

Dans cet écran, on retrouve les valeurs cibles et les tolérances saisies au préalable.

Je voudrais :

Que dans la ligne "Nombre de caractéristique NC", on compte le nombre de valeur (saisies dans les TextBox) et qui sont hors tolérances. Ceci lui permettrait d'avoir une indication pour savoir si il doit accepter ou refuser le contrôle.

Ce qui est important, c'est qu'une colonne de Textbox correspond à 1 côte, chaque colonne correspondant chacune à 1 côte à mesurer.

Ce que je pensais faire :

Dim i As Integer

' Pour 1 seul côte

For i = 1 To 100 '(Oui, oui il y a bien 10 colonnes de 80 TextBox donc 800 TB en tout)

If UserForm.Controls("TextBox" & i).Value <Tolérance inférieur And >Tolérance supérieur Then

Dec_C1.Value = Dec_C1.Value + 1

Else

End If

Next

Je reste à votre disposition pour vous apporter des infos complémentaires si besoin,

Je vous remercie d'avance,

Bon aprèm à tous,

FB

Ce que je pensais faire :

Dim i As Integer
' Pour 1 seul côte
For i = 1 To 100 '(Oui, oui il y a bien 10 colonnes de 80 TextBox donc 800 TB en tout)
If UserForm.Controls("TextBox" & i).Value <Tolérance inférieur And >Tolérance supérieur Then
Dec_C1.Value = Dec_C1.Value + 1
Else
End If
Next

bonjour,

par exemple, à tester

Dim i As Integer
' Pour 1 seul côte
Tolérance_inférieure= 0 ' à adapter
Tolérance_supérieure =0 ' à adapter
For i = 1 To 100 '(Oui, oui il y a bien 10 colonnes de 80 TextBox donc 800 TB en tout)
If UserForm.Controls("TextBox" & i).Value <Tolérance_inférieure And UserForm.Controls("TextBox" & i).Value>Tolérance_supérieure Then
Dec_C1.Value = Dec_C1.Value + 1
Else
End If
Next

Salut,

Merci pour ton aide ! Finalement je suis parti sur autre chose, mais ton aide m'a été précieuse !

Bonne fin de journée,

Cordialement,

Finalement j'ai toujours mon souci :

Dim i As Integer
' Pour 1 seul côte
Tolérance_inférieure= 0 ' à adapter
Tolérance_supérieure =0 ' à adapter
For i = 1 To 100 
If UserForm.Controls("TextBox" & i).Value <Tolérance_inférieure Then

Dec_C1.Value = Dec_C1.Value + 1 '!!! C'est ici que ça foire, le .Value il n'aime pas ^^

ElseIf  UserForm.Controls("TextBox" & i).Value>Tolérance_supérieure Then

Dec_C1.Value = Dec_C1.Value + 1 '!!! C'est ici que ça foire, le .Value il n'aime pas ^^

Else

End If

Next

Avez-vous une solution ?

bonjour,

je suppose que Dec_C1 est une variable qui ne référence pas un objet. Donc enlève le .value.

Donc, voici le code que j'essai de faire fonctionner pour afficher le nombre de valeur entré dans les TextBox qui sont hors tolérances (ces tolérances étant inscrites sur un autre tableur Excel, que j'ouvre en parallèle (qui s'appelle Plan_controle).

Ci-dessous, les Range("B11").Value me permettent d'affecter une tolérance sup LB21 et une tolérance inf via Range("B12").

La boucle for en dessous, doit me permettre, de revenir sur mon fichier principal, dans le formulaire, pour me compter le nombre de valeur inscrites dans les TextBox et qui ne sont pas compris dans les tolérances.

'Aide à la décision pour la caractéristique C1

    Sheets("Plan_controle").Select

        'Valeurs des limites supérieures
            LB21 = Range("B11").Value
            LB22 = Range("C11").Value
            LB23 = Range("D11").Value
            LB24 = Range("E11").Value
            LB25 = Range("F11").Value
            LB26 = Range("G11").Value
            LB27 = Range("H11").Value
            LB28 = Range("I11").Value
            LB29 = Range("J11").Value
            LB30 = Range("K11").Value

        'Valeurs des limites inférieures
            LB31 = Range("B12").Value
            LB32 = Range("C12").Value
            LB33 = Range("D12").Value
            LB34 = Range("E12").Value
            LB35 = Range("F12").Value
            LB36 = Range("G12").Value
            LB37 = Range("H12").Value
            LB38 = Range("I12").Value
            LB39 = Range("J12").Value
            LB40 = Range("K12").Value

            Dim i As Double

            For i = 1 To 28

                If Saisie_Form.Controls("TB" & i).Value < LB31 Then

                    LB51 = LB51 + 1

                ElseIf Saisie_Form.Controls("TB" & i).Value > LB21 Then

                    LB51 = LB51 + 1

                Else

                End If

           Next

En espérant avoir été clair si l'expression de mon besoin,

Merci d'avance,

Floo73

Bonjour,

ce que ton code fait

copier des valeurs de cellules de "plan_controle" dans des variables LBx. (des textbox sur un userform ?)

puis comparer le contenu de TB1 à TB28 avec LB21 et LB31 et incrémenter LB51 si valeur hors normes.

Sans autre indication je ne vois rien d'incorrect.

quel est donc le problème ?

message d'erreur ?

Re,

Je viens de t'envoyer la sauce par mail

Ce programme étant pour le boulot, je préfère ne pas le poster ici.

Si tu as des suggestions d'améliorations supplémentaires je suis preneur !

J'attends de tes nouvelles et je te remercie par avance,

Bonne journée,

++

Rechercher des sujets similaires à "determiner valeurs textbox hors tolerances"