Afficher une valeur numérique dans une TextBox dans UserForm

Bonjour à tous,

Le titre est assez clair je pense :

Je cherche à afficher une valeur (numérique) dans une TextBox dans UserForm

Et je n'ai pas encore réussi à trouver la bonne combin' pour y arriver!

J'ai essayé pas mal de choses et ai tourné sur le net, mais là ça fait 1h, je m'avoue un peu à court d'idées...

Voilà ce que j'ai à l'heure actuelle, et ça ne marche pas!

SORTlist.SORT1Value.Text = CStr(SORT(k, 5).Value)
Me.SORT2Value.Value = CStr(SORT(k, 6))
Me.SORT3Value.Text = CStr(SORT(k, 7))

(Mes valeurs à afficher sont stockées dans un tableau; ici : SORT)

Merci d'avance!

Bonjour

ReuK a écrit :

Voilà ce que j'ai à l'heure actuelle, et ça ne marche pas!

Il faut être plus précis

As-tu essayé comme-ça ?

SORTlist.SORT1Value.Text = SORT(k, 5)
Me.SORT2Value.Value = SORT(k, 6)
Me.SORT3Value.Text = SORT(k, 7)

Oui j'ai déjà essayé et je viens de retenter mais rien ne s'affiche dans ma TextBox

Bah pour être plus précis, j'ai déjà essayé pas mal de combinaisons différentes, mais j'ai pas trouvé quoi que ce soit qui faisait s'affichez quelque chose dans la TextBox :

SORTlist.SORT1Value.Value = SORT(k, 5).Value
Me.SORT2Value.Value = CStr(SORT(k, 6))
Me.SORT3Value.Text = CStr(SORT(k, 7))

SORTlist.SORT1Value.Value = "" & SORT(k, 5)
Me.SORT2Value.Value = CStr(SORT(k, 6).Value)
Me.SORT3Value.Text = CStr(SORT(k, 7).Value)

SORTlist.SORT1Value.Value = Val(SORT(k, 5) * 1)
Me.SORT2Value.Value = CStr(SORT(k, 6).Value * 1)
Me.SORT3Value.Text = CStr(SORT(k, 7).Value * 1)

...

Sinon pour plus de détails, j'ai ce code aussi (qui me permet d'avertir si la valeur n'est pas numérique et qui marche très bien!) :

Private Sub SORT1Value_Change()

If IsNumeric(SORT1Value.Value) Then 
        Label_error1.Visible = False
    Else
        Label_error1.Visible = True 
End If

End Sub

Si je peux apporter plus de précisions, dites moi quoi!

Encore merci!

Bonjour

ReuK a écrit :

Si je peux apporter plus de précisions, dites moi quoi!

Ton fichier anonymisé serait le bienvenue

En expliquant ce que tu veux faire et où tu veux le faire : Détailles bien les opérations à faire

Encore quelques détails, j'utilise ce code :

Sub ModelList_Change()

For k = 2 To UBound(SORT, 1)
    If SORT(k, 1) <> BrandList.Value Then
    Else
        If SORT(k, 2) <> TypeList.Value Then
        Else
            If SORT(k, 3) <> FuelList.Value Then
            Else
                If SORT(k, 4) <> ModelList.Value Then
                Else
                    Me.SORT1Value.Value = CStr(1)
                    Me.SORT2Value.Value = "pouet"
                    Me.SORT3Value.Value = SORT(k, 7).Value
                End If
            End If
        End If
    End If
Next k

End Sub

Private Sub SORTValidate_Click()

Sheets("Calculation").Cells(3, 1) = 
Sheets("Calculation").Cells(5, 1) = Me.SORT2Value.Value
Sheets("Calculation").Cells(7, 1) = Me.SORT3Value.Value

Unload Me

End Sub

La partie surlignée est donc celle qui me pose problème mais la suivante marche très bien quand je rentre des valeurs manuellement!

Me.SORT1Value.Value

donc je peux bien récupérer les valeurs en utilisant cette commande mais j'arrive pas à lui faire afficher quoique ce soit depuis VBA....

J'ai essayé avec des 1, "", Cstr(...), "blabla", .... mais le resultat est le même, rien ne s'affiche...


Voilà le fichier,

et ce que je veux faire, c'est qu'à partir des choix qu'on fait dans l'UserForm (SORTList, à charger depuis la page Calculation), les résultats (SORT1, 2 et 3 qui sont dans la page SORT et le tableau du même nom) s'affichent dans les TextBox prévues pour...

Le reste marche bien mais je dois avoir fait quelque chose de pas logique pour ne rien pouvoir saisir depuis le VBA...

185reuk-userform-v1.xlsm (56.01 Ko)

Bonjour

Tu comparer un nombre avec une chaîne de caractère, c'est pour cela que cela ne passait pas

Modifies ton code

Private Sub ModelList_Change()

For k = 2 To UBound(SORT, 1)
    If SORT(k, 1) <> BrandList.Value Then
    Else
        If SORT(k, 2) <> TypeList.Value Then
        Else
            If SORT(k, 3) <> FuelList.Value Then
            Else
                If CStr(SORT(k, 4)) <> ModelList.Value Then
                Else
                    Me.SORT1Value = SORT(k, 5)
                    Me.SORT2Value = SORT(k, 6)
                    Me.SORT3Value = SORT(k, 7)
                End If
            End If
        End If
    End If
Next k

End Sub

Rah! Tout ça parce que j'ai eu la flemme d'aller chercher les vraies références des modèles et que j'ai mis des chiffres pour gagner du temps... ça m'apprendra!

Un grand merci en tout cas!

Bonjour,

Excusez moi de vous dérangez mais pourriez vous m'expliquer votre code s'il vous plaît?

Que je puisse l'adapter moi même à n'importe quel besoin

Rechercher des sujets similaires à "afficher valeur numerique textbox userform"