bonsoir le forum Bonsoir. a tous
je reviens avec mon fichier MANN V7. suite de MANN V3. je voudrai que la colonne de combobox n'admette pas de doublons, que, dans la list box, on ne retrouve pas deux fois un meme intitulé et qu'il en soit de meme pour la combo box. j'espere que j'aurai une solution.
merci d'avance
Bonsoir,
Je pense que tous les intervenants attendent d'avoir plus de détail .
C'est bien d'exposer ce qu'on ne veut pas, mais quoi faire en ce cas : on élimine tous les doublons ou les occurrences suivantes ?
Bonjour le forum.
dans le fichier, si l'on insere une charge qui existe dejà, on doit obtenir un refus.
la colonne S ne doit en aucun cas avoir deux fois un meme intitulé
merci encore.
Modifiez ou validez une cellule quelconque ce qui lance la macro :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
ListObjects(1).Range.RemoveDuplicates 1
Application.EnableEvents = True
End Sub
Et si le ménage n'a pas encore été fait :
VB:
Sub Bouton1_Cliquer()
ActiveCell = ActiveCell.Formula 'lance la Worksheet_Change
UserForm1.Show
End Sub
merci. encore
je me retrouve devant un autre problème.
quand un libellé était déjà renseigné, et que l'on décide de modifier sa valeur, la procédure ci dessous Bogue.
'-------procédure pour la saisie semi automatique de la combobox1-------
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
' If ComboBox1.Text <> "" And TextBox1.Text <> "" Then
Me.ListBox1.List(L, 1) = y
Me.TextBox1 = ""
Me.ComboBox1 = ""
Me.ComboBox1.SetFocus
' End If
End Sub
Précisement la ligne de code "" Me.ListBox1.List(L, 1) = y "" que faire.
j'ai remplacé tout le code
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
' If ComboBox1.Text <> "" And TextBox1.Text <> "" Then
Me.ListBox1.List(L, 1) = y
Me.TextBox1 = ""
Me.ComboBox1 = ""
Me.ComboBox1.SetFocus
' End If
End Sub
par le tiens
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If L >= ListBox1.ListCount Then Exit Sub
end sub
c'est a ce niveau que je me suis planté.
que dois je vraiment faire. je ne suis qu'un débutant.
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If L >= ListBox1.ListCount Then Exit Sub
ListBox1.List(L, 1) = y
TextBox1 = ""
ComboBox1 = ""
ComboBox1.SetFocus
End Sub
MERCI; j'ai pris le bout de code ci dessus. je l'ai mis.
j'ai par exemple Cabri 2 000. je veux le transformer en Cabri 5 000, l'opération ne s'effectue pas.
je bloque encore.
Dans le fichier joint j'ai supprimé les macros TextBox1_Change et TextBox1_Exit.
Et créé cette macro :
VB:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
ListBox1.List(ListBox1.ListIndex, 1) = TextBox1
TextBox1.SetFocus
TextBox1.SelStart = 0
TextBox1.SelLength = Len(TextBox1)
End Sub
Entrer ou modifier le montant dans la TextBox et faire un double-clic dans la ListBox.
Encore un soucis. je souhaiterai si possible que les deux méthodes fonctionnent. c'est a dire
1-faire la saisie semi automatique et insérer la valeur
2- taper sur ENTREE pour alimenter la list box. (cette partie a été suprimée par la nouvelle procédure)
3-pouvoir modifier a souhait les valeurs si on se trompe en resaisissant la combobox et en inscrivant le montant.
merci d'avance