Saisie dans la bonne cellule selon choix combobox

  • Initiateur de la discussion Initiateur de la discussion Demouret
  • 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 !

Demouret

XLDnaute Junior
Bonjour le Forum,

J'imagine que le sujet à déjà été traité à maintes reprises mais je ne vois même pas comment effectuer ma recherche...

Lorsque dans un USF je renseigne une valeur je voudrai que celle ci s'inscrive dans la bonne cellule selon le choix que je fais dans la combobox. Ca je ne sais pas trop comment faire de manière simple... Ni pas simple d'ailleurs...

j'ai mis un petit exemple...

A votre bon coeur ;-)

Merci

Bonne journée
 

Pièces jointes

Re : Saisie dans la bonne cellule selon choix combobox

Bonjour Demouret,

Tu peux essayer de rajouter dans le code de ton Userform:

Code:
Private Sub ComboBox1_AfterUpdate()
    If TextBox2.Value <> "" And ComboBox1.Value <> "" Then
      Cells(21, Cells.Find(ComboBox1.Value).Column).Value = TextBox2.Value
    End If
End Sub

Private Sub TextBox2_AfterUpdate()
If TextBox2.Value <> "" And ComboBox1.Value <> "" Then
  Cells(21, Cells.Find(ComboBox1.Value).Column).Value = TextBox2.Value
    End If
End Sub

Bonne journée !
 
Re : Saisie dans la bonne cellule selon choix combobox

Bonjour,

Un exemple avec la fonction Match. A mettre dans le module de ta Form :
Code:
Private Sub ComboBox1_Change()

    Dim Plage As Range
    
    With Worksheets("Feuil1")
     
        Set Plage = .Range(.Cells(16, 1), .Cells(16, .Columns.Count).End(xlToLeft))
    
    End With
        
        Cells(ActiveCell.Row, Application.WorksheetFunction.Match(ComboBox1.Text, Plage)) = TextBox2.Text
           
End Sub

Private Sub ComboBox2_Change()

    Dim Plage As Range
    
    With Worksheets("Feuil1")
     
        Set Plage = .Range(.Cells(16, 1), .Cells(16, .Columns.Count).End(xlToLeft))
    
    End With
        
        Cells(ActiveCell.Row, Application.WorksheetFunction.Match(ComboBox2.Text, Plage)) = TextBox3.Text
        
End Sub

Private Sub ComboBox3_Change()

    Dim Plage As Range
    
    With Worksheets("Feuil1")
     
        Set Plage = .Range(.Cells(16, 1), .Cells(16, .Columns.Count).End(xlToLeft))
    
    End With
        
        Cells(ActiveCell.Row, Application.WorksheetFunction.Match(ComboBox3.Text, Plage)) = TextBox4.Text

End Sub

Hervé.
 
Re : Saisie dans la bonne cellule selon choix combobox

Bonjour le forum,

Merci David, Merci Hervé
Le code fonctionne et je suis déjà très content avec ça

Pour faire un peu le mec chiant je me demandais comment faire pour que tout soit validé uniquement lorsque l'on "valide" avec le commandbutton
Je m explique, en fait avec combobox_change ou afterupdate les valeurs saisies s'inscrivent directement sur la feuille et si je change la couleur dans la combobox2 cela m'inscrit 2 fois (ou plusieurs fois) la valeur saisie
C'est OK quand on le sait mais c'est peut être une source d'erreur j'en ai peur...
Mais si c'est pas possible je me contente de ce code je ferai attention

Merci

Bonne journée

Piere
 
Re : Saisie dans la bonne cellule selon choix combobox

bonjour Demouret,Theze,VDAVID
tu as la meme list sur feuil 1 que sur feuil coloris ?? autant prendre directement la list sur feuil1 a moins que loupe quelque chose
code user

Code:
Private Sub UserForm_Initialize()
ComboBox1.List = Application.Transpose([f16:ap16])
ComboBox2.List = ComboBox1.List
ComboBox3.List = ComboBox1.List
End Sub

Code:
Private Sub CommandButton1_Click()
ActiveCell.Value = TextBox1.Value
If ComboBox1.ListIndex > -1 And TextBox2 <> "" Then _
Cells(ActiveCell.Row, ComboBox1.ListIndex + 6) = TextBox2.Value
If ComboBox3.ListIndex > -1 And TextBox4 <> "" Then _
Cells(ActiveCell.Row, ComboBox3.ListIndex + 6) = TextBox4.Value
Unload UserForm3
End Sub
 
Re : Saisie dans la bonne cellule selon choix combobox

Bonjour Laetitia,

Tu sais je bidouille avec mes maigres connaissances sur le sujet alors c'est pas toujours très optimisé ;-))
Je ne savais pas que l'on pouvais remplir les combo comme ça mais effectivement c'est nickel...
... et tout aussi nickel pour le code du commandbutton

Merci beaucoup

Bonne journée à vous tous
 
- 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

Retour