Liste modifiable

alex67800

XLDnaute Impliqué
Bonsoir tout le monde,

Une petite question:

J'ai une combobox alimenté par une plage de cellule de type D1: D, jusque la tout va bien, elle affiche donc tout le contenu de la colonne D à partir de D1 par l'usf_initialize de la façon suivante:
ComboBox1.Clear
lgderlig = Worksheets("civil").Range("d" & Cells.Rows.Count).End(xlUp).Row
If lgderlig > 1 Then
ComboBox1.RowSource = "civil!d1:d" & lgderlig
End If

Maintenant je souhaiterai que quand je tape un "texte" non compris dans la liste celle-ci se rajoute dans ma colonne source D1:D, puis effectue un tri ascendant.

Avec la double_click peut-être ou encore avec le bouton valider que j'ai sur mon USF. les deux version m'interresserait car je ne sais encore laquelle prendre.

Merci d'avance pour vos astuces.
 

Excel-lent

XLDnaute Barbatruc
Re : Liste modifiable

Salut Alex67800, le forum

alex67800 à dit:
quand je tape un "texte" non compris dans la liste celle-ci se rajoute dans ma colonne source D1:D, puis effectue un tri ascendant.

?

Où serait saisi ton "texte"? Dans n'importe quelle cellule? Et n'importe quelle onglet?

Si oui, à quoi sait-on que CE "texte" doit ou non être rajouté dans la colonne source?

A bientôt
 

alex67800

XLDnaute Impliqué
Re : Liste modifiable

Bonjour Excel-Lent,

Le texte est tout simplement tapé dans la combobox en question, si il ne figure pas dans la combo.
C'est une liste de Nom et Prénom tout simplement.
Actuellement quand j'appuie sur "valider" le texte se reporte bien sur les cellules de destination, mais ne se rajoute pas dans la colonne source.

J'y pense à l'instant la colonne D est alimenté par les colonne B et C, je m'explique:
B1= Nom
C1= Prénom
D1= B1&" "&C1 <<<<<< la formule en D1
etc....
J'ai utilisé cette méthode car je ne savais pas comment affiché la valeur de 2 colonnes dans ma combo.
Si tu arrive a faire en sorte que cela se rajoute à la colonne source (D), le seul hic sera (mais c'est pas grave) que les cellules B et C ne seront pas alimenté par la colnne D.

Merci de te pencher sur la question, que ferais-je sans toutes ces bonnes âmes du forum....
 
Dernière édition:

pascal21

XLDnaute Barbatruc
Re : Liste modifiable

bonour
je te suggère de mettre un bout de ton classeur avec ce fameux combobox et sa liste
ça sera quand même plus facile pour tout ceux qui veulent t'aider
personnellement, je n'ai pas tout compris ce que tu souhaites réellemnt
 

Evelynetfrancois

XLDnaute Impliqué
Re : Liste modifiable

bonjour
j ai posé une question similaire la semaine dernière, et voici la solution qui m'a été donnée et qui fonctionne à merveille
( je ne retrouve plus ce post ....) mais un grand merci aux auteurs !!!

en passant par un CommandButton intermediaire.......

Private Sub ComboBox1_Change()
CommandButton1.Enabled = Trim(ComboBox1.Text) <> "" And ComboBox1.ListIndex = -1
End Sub

Private Sub CommandButton1_Click()
ComboBox1.AddItem ComboBox1.Text
With Sheets("Civil")
.Range("D" & .Range("D1000").End(xlUp).Row + 1) = Application.Proper(ComboBox1.Text)
End With

Puis je fais uin tri Alpha dans lequel je vire les doublons , mais pour toi je pense que tu dois garder les doublons

E et F
 

alex67800

XLDnaute Impliqué
Re : Liste modifiable

:)Bonsoir EvelynetFrancois, Pascal21,
Que ferions nous sans Hasco et les autres? Ils sont d'une connaissance quasiment sans limite!
Une question toute fois, car j'aime comprendre ce que je fait, à quoi correspond TRIM dans:
Private Sub ComboBox1_Change()
CommandButton1.Enabled = Trim(ComboBox1.Text) <> "" And ComboBox1.ListIndex = -1
End Sub
Si je saisie un peu le bouton intermédiaire à la fonction ajouter à la liste!?

Pour te répondre pascal, il est vrai qu'un fichier vaut mieux qu'un long discours, aussi il est consultable en suivant ce lienLien supprimé ;)

EvelynetFrancois je vais essayer d'adapter ce code.
Merci pour votre aide.
 

alex67800

XLDnaute Impliqué
Re : Liste modifiable

Re bonsoir,
je viens d'intégrer le code que hasco t'a fournis, mais ma macro n'a pas l'air d'accord avec la méthode Additem. J'ai pour message "erreur d'execution 70" accès refusé!?
Et la ligne:
ComboBox1.AddItem ComboBox1.Text

En surbrillance!

Je précise ma combobox1 s' alimente via l'usf_initialize de la façon suivante:
Dim Cell As Range, k As Byte

ComboBox1.Clear
lgderlig = Worksheets("civil").Range("d" & Cells.Rows.Count).End(xlUp).Row
If lgderlig > 1 Then
ComboBox1.RowSource = "civil!d1:d" & lgderlig
End If
Et ainsi de suite pour toutes mes combos(j'en ai 10).
Sinon le code combobox1_Change lui fonctionne pas mal, il active et désactive mon bouton ajouter, mais quand je clic dessus patatra.
 
Dernière édition:

Evelynetfrancois

XLDnaute Impliqué
Re : Liste modifiable

BONJOUR Alex
j ai changé l alimentation de ta combobox1 à l initialisation
( cb8 est le nom du bouton ajouté qui permet de rentrer ou non le nouveau nom saisi )

With Sheets("civil")
ComboBox1.List = .Range("d2:d" & .Range("d1000").End(xlUp).Row).Value
End With

' au lieu de ...

'ComboBox1.Clear 'conducteur
' lgderlig = Worksheets("civil").Range("d" & Cells.Rows.Count).End(xlUp).Row
' If lgderlig > 1 Then
' ComboBox1.RowSource = "civil!d1:d" & lgderlig
' End If

et tout rentre dans l ordre ..du moins chez moi Lol

Private Sub CommandButton8_Click()
ComboBox1.AddItem ComboBox1.Text
With Sheets("Civil")
.Range("D" & .Range("D1000").End(xlUp).Row + 1) = Application.Proper(ComboBox1.Text)
End With
CommandButton8.Enabled = False

E et F
 
Dernière édition:

alex67800

XLDnaute Impliqué
Re : Liste modifiable

Bonjour E et F,
Super ça fonctionne bien, maintenant comment faire pour un tri ascendant?

Je sais j'abuse.Lol

Merci pour ton aide.

Arff c'est bon j'ai utilisé l'enregistreur de macro et cela donne ceci:
Sub test_Macro2()
'
' test_Macro2 Macro
' Macro enregistrée le 17/11/2008 par Alex67800
'
Application.ScreenUpdating = False
Sheets("civil").Activate
With Sheets("Civil")
Range("B1: D65536").Sort Key1:=Range("D1"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("A1").Select
End With
Sheets("Etat").Activate
Application.ScreenUpdating = True

End Sub
En rouge ce que j'ai rajouté sinon cela le faisait sur la feuille active malgré le with! Mystère!?!:rolleyes:
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 305
Messages
2 087 087
Membres
103 461
dernier inscrit
dams94