Mon tableau qui commence en D12.
Mon problème qu’il ne se trouve pas en A1 donc après plusieurs essais je jette l’éponge.
Voici le DEV:
Résumé
Private Sub ComboBox1_Change()
ligne1 = [D13].Offset(ComboBox1.ListIndex, 0).Row
Me.TextBox1.Text = Cells(ligne1, 5)
Me.TextBox2.Text = Cells(ligne1, 6)
Me.TextBox3.Text = Cells(ligne1, 7)
Me.TextBox4.Text = Cells(ligne1, 8)
Me.TextBox5.Text = Cells(ligne1, 9)
Me.TextBox6.Text = Cells(ligne1, 10)
Me.TextBox7.Text = Cells(ligne1, 12)
'.....placer le curseur sur le code choisi
Range("D13").Offset(ComboBox1.ListIndex, 0).Select
End Sub
Private Sub CommandButton1_Click()
Dim i As Integer
Var = Sheets("Feuil1").Range("D:D").End(xlDown).Row + 1
' r = MsgBox("Voulez vous confirmez la modification?", vbYesNo, "Gestion fonctionnaires")
If r <> 6 Then Exit Sub
For i = 13 To Var
While ComboBox1.Text = Cells(i, 4).Value
Rows(i).Select
Cells(i, 5) = TextBox1.Text
'Cells(i, 7) = TextBox2.Text
'Cells(i, 8) = TextBox3.Text
'Cells(i, 9) = TextBox4.Text
'Cells(i, 10) = TextBox5.Text
'Cells(i, 11) = TextBox6.Text
'Cells(i, 12) = TextBox7.Text
i = i + 1
Wend
Next i
End Sub
Private Sub UserForm_Initialize()
ligne = Range("D" & Rows.Count).End(xlUp).Row
ComboBox1.RowSource = "D13:D" & ligne
ComboBox1.ListIndex = 0
End Sub
Bonjour
Pas facile de répondre avec ces maigres explications de surcroît pas très compréhensibles et surtout sans fichier pour aprehender ta problématique
Merci d être plus dans l exposé de ta de convenue et de fournir un support sans donnée confidentielle
voila oups.[quote=« FFO, post:2, topic:8815, full:true »]
Bonjour
Pas facile de répondre avec ces maigres explications de surcroît pas très compréhensibles et surtout sans fichier pour aprehender ta problématique
Merci d être plus dans l exposé de ta de convenue et de fournir un support sans donnée confidentielle
[/quote]
Seul la colonne E est modifiée les instructions pour les colonnes suivantes F à J on été inhibées dans la procédure de ton bouton « Modifier » de ton formulaire
Faut-il les réactiver ?
Range(« D:D »).End(xlDown).Row + 1
détermine la 1° cellule qui change d’état à partir de la 1° ligne de la colonne D en descendant
La cellule D1 est vide la première cellule non vide en descendant est la cellule D13 donc la ligne déterminée par l’instruction Range(« D:D »).End(xlDown).Row est 13
et par voie de conséquence l’instruction globale Range(« D:D »).End(xlDown).Row + 1 donne 14
Range(« D » & Rows.Count).End(xlUp).Row + 1
détermine la 1° cellule qui change d’état à partir de la dernière ligne de la colonne D en remontant
La cellule D18496 est vide la première cellule non vide en remontant est la cellule D21 donc la ligne déterminée par l’instruction Range(« D » & Rows.Count).End(xlUp).Row est 21
et par voie de conséquence l’instruction globale Range(« D » & Rows.Count).End(xlUp).Row + 1 donne 22
Dans ton instruction qui suit la variable var doit porter le numéro de la dernière ligne à traiter :
For i = 13 To Var
Donc c’est la 2° ligne de code qui est appropriée pour cela
Alors sur le fichier principal l’implémentation de la fonction « MODIFIER » sur un userform existant un « UserForm_Initialize » existe déjà, mais ca c’est une autre aventure.