Trouver intersection pour inserer une valeur

kartouche04 Messages postés 10 Date d'inscription mardi 11 novembre 2008 Statut Membre Dernière intervention 15 novembre 2008 - 11 nov. 2008 à 21:37
DidierLoche Messages postés 33 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 25 novembre 2008 - 15 nov. 2008 à 13:00
Bonjour, je vous explique mon problème.
Dans un userform, je choisi un nom de produit dans une liste déroulante, puis je détermine la quantité des produits sous ensemble qu'il faut pour fabriquer ce produit, donc je tape dans un textbox la quantité, et je choisi le produit intermédiaire. J'aimerai que la quantité saisie rentre dans un tableau excel sous forme de double entrée.
Pouvez-vous m'éguiller?Cela est-il possible?Qu'elle fonction puis-je utiliser?
Merci de votre aide

3 réponses

DidierLoche Messages postés 33 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 25 novembre 2008 1
14 nov. 2008 à 19:48
Bonsoir,

Qu'appelles-tu "double entrée ?" Tu peux saisir la quantité avec une textbox et un macro inscit cette quantité dans une cellule précise mais tu veux aussi pouvoir entrer directement la valeur dans la même cellule, c'est ça ? Si oui, ben oui tu peux !

Bonne soirée,

Didier
0
kartouche04 Messages postés 10 Date d'inscription mardi 11 novembre 2008 Statut Membre Dernière intervention 15 novembre 2008
15 nov. 2008 à 01:10
Bonsoir,
Double entrée veux dire qu'en ordonnée, j'ai quelque chose et en abscisse aussi. Dans un user je choisi une valeur en ordonnée grace a une liste déroulante puis grace à une autre liste déroulante je choisi une valeur en abscisse. Et j'aimerai qu'à l'intersection de ces deux valeurs, il s'insère une valeur que j'ai inscrit dans un textbox.
Merci
Bonne soirée.
0
DidierLoche Messages postés 33 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 25 novembre 2008 1
15 nov. 2008 à 13:00
Bonjour,
Ok, je pense avoir compris.
Je fais l'hypothèse que tes produits sont dans la colonne A à partir de la ligne 2 et que tes produits élémentaires dans dans la ligne 1 à partir de la colonne 2.
Tu créés un UserForm dans lequel tu as deux zones de liste modifiables (ComboBox1 et ComboBox2), une zone de texte (TextBox1), un bouton "OK" et un bouton "Annuler".


Voilà le code :




Dim OK As Boolean
Sub remplissage()
Dim li As Integer, co As Integer
Dim CB1 As String, CB2 As String
initialisation_Userform
UserForm1.Show
If OK Then
    If UserForm1.TextBox1 <> "" Then
        CB1 = UserForm1.ComboBox1.Value
        li = Columns(1).Find(CB1, Cells(1, 1)).Row
        CB2 = UserForm1.ComboBox2.Value
        co = Rows(1).Find(CB2, Cells(1, 1)).Column
        Cells(li, co) = UserForm1.TextBox1.Value
    End If
End If
End Sub
Sub initialisation_Userform()
Dim li As Integer, co As Integer
With UserForm1
    With .ComboBox1
        .Clear
        li = 2
        Do While Worksheets(1).Cells(li, 1) <> ""
            .AddItem Worksheets(1).Cells(li, 1)
            li = li + 1
        Loop
    End With
    With .ComboBox2
        .Clear
        co = 2
        Do While Worksheets(1).Cells(1, co) <> ""
            .AddItem Worksheets(1).Cells(1, co)
            co = co + 1
        Loop
    End With
End With



End Sub

Sub OK_true()
   UserForm1.Hide
   OK = True
End Sub




Private Sub OK_False()
   UserForm1.Hide
   OK = False

End Sub



Tu lances la macro "Remplissage". Elle lance "Initialisation_UserForm" qui comme son nom l'indique initialise la UserForm (remplit les 2 ComboBox).
En cliquant sur le bouton "OK", tu lances la macro "OK_true" et en cliquant sur "Annuler", tu lances "OK_False".
Tu peux ajouter un texte pour t'assurer que la quantité entrée est bien un nombre avant de l'inscrire dans le tableau.
Bonne journée,
Didier
0
Rejoignez-nous