Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Liste modifiable evolutive

3 réponses
Avatar
Ged
Bonjour, j'ai un userform liste deroulante modifiable dont la source est une
plage de cellule

derligneCL =
Application.WorksheetFunction.CountA(Worksheets("BDI").Range("A:A"))
CLIENT.RowSource = ("a2:a" & derligneCL)

j'aimerais que si l'utilisateur ne trouve pas son bonheur dans la liste
deroulante, qu'il la saisisse dans le userform et que ça mette jour la plage
ci-dessus.
merci d'avance pour vos réponse.

3 réponses

Avatar
Ged
j'ai oublié aussi, j'aimerais qu'un contrôle se fasses pour verifier que ce
que l'utilisateur rentre dans la liste déroulante n'existe pas dans la plage
et le cas échant ne le rajoute pas pour éviter les doublons.

désolé pour ce message en 2 parties


Bonjour, j'ai un userform liste deroulante modifiable dont la source est une
plage de cellule

derligneCL =
Application.WorksheetFunction.CountA(Worksheets("BDI").Range("A:A"))
CLIENT.RowSource = ("a2:a" & derligneCL)

j'aimerais que si l'utilisateur ne trouve pas son bonheur dans la liste
deroulante, qu'il la saisisse dans le userform et que ça mette jour la plage
ci-dessus.
merci d'avance pour vos réponse.


Avatar
JB
Bonjour,

Si l'élément frappé n'appartient pas à la liste, il est ajouté
(Liste dans le tableur)

Nom de champ:Liste ÞCALER($D$2;;;NBVAL($D:$D)-1)

Private Sub Choix_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If IsError(Application.Match(Me.Choix, Range("liste"), 0)) And
Me.Choix <> "" Then
If MsgBox("Etes vous sûr?", vbYesNo) = vbYes Then
Range("liste").End(xlDown).Offset(1, 0) = Me.Choix
Range("liste").Sort Key1:=Range("liste")(1)
Me.Choix.List = Application.Transpose([liste])
End If
End If
End Sub

Private Sub UserForm_Initialize()
Me.Choix.List = Application.Transpose([liste])
End Sub

http://boisgontierj.free.fr/fichiers/Formulaire/Form_ajoutListe.xls

JB

On 28 fév, 10:52, Ged wrote:
Bonjour, j'ai un userform liste deroulante modifiable dont la source est une
plage de cellule

derligneCL =
Application.WorksheetFunction.CountA(Worksheets("BDI").Range("A:A"))
CLIENT.RowSource = ("a2:a" & derligneCL)

j'aimerais que si l'utilisateur ne trouve pas son bonheur dans la liste
deroulante, qu'il la saisisse dans le userform et que ça mette jour la plage
ci-dessus.
merci d'avance pour vos réponse.


Avatar
Ged
merci beaucoup JB


Bonjour,

Si l'élément frappé n'appartient pas à la liste, il est ajouté
(Liste dans le tableur)

Nom de champ:Liste ÞCALER($D$2;;;NBVAL($D:$D)-1)

Private Sub Choix_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If IsError(Application.Match(Me.Choix, Range("liste"), 0)) And
Me.Choix <> "" Then
If MsgBox("Etes vous sûr?", vbYesNo) = vbYes Then
Range("liste").End(xlDown).Offset(1, 0) = Me.Choix
Range("liste").Sort Key1:=Range("liste")(1)
Me.Choix.List = Application.Transpose([liste])
End If
End If
End Sub

Private Sub UserForm_Initialize()
Me.Choix.List = Application.Transpose([liste])
End Sub

http://boisgontierj.free.fr/fichiers/Formulaire/Form_ajoutListe.xls

JB

On 28 fév, 10:52, Ged wrote:
Bonjour, j'ai un userform liste deroulante modifiable dont la source est une
plage de cellule

derligneCL > > Application.WorksheetFunction.CountA(Worksheets("BDI").Range("A:A"))
CLIENT.RowSource = ("a2:a" & derligneCL)

j'aimerais que si l'utilisateur ne trouve pas son bonheur dans la liste
deroulante, qu'il la saisisse dans le userform et que ça mette jour la plage
ci-dessus.
merci d'avance pour vos réponse.