Majuscule/ minuscule Combobox

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 !

lioneldu47

XLDnaute Occasionnel
BONJOUR LE FORUM,​
Est ce que quelqu'un peut me dire quelle est la macro à écrire pour différencier les majuscules et les minuscules dans un combobox?

Par exemple, dans ma base de donnée un mot est écrit en majuscule et il m'est impossible de le mettre en minuscule dans le combobox. Des que je commence à taper le mot en minuscule ça me met dirrectement le mot en entier mais en majuscule comme dans la base de données... Il m'est donc impossible de rajoouter une donnée en utilisant le même mot mais en minuscule.😀

Merci
 
Re : Majuscule/ minuscule Combobox

Bonjour

Pour mettre en majuscule il faut utiliser la fonction ucase
aide vba
Ucase Renvoie une valeur de type Variant (String) contenant la chaîne indiquée, convertie en majuscules
en minuscule
LCase, fonction
Renvoie une valeur de type String convertie en minuscules.

Concernant le combobox il faut vérifier la propriété Style.


JP
 
Dernière édition:
Re : Majuscule/ minuscule Combobox

Merci mais ce n'es pas exactement ce que je cherche je voudrais que dans mon combobox il y auraile meme mot mais qu'il apparaissent deux fois en minuscule et en majuscule... lorsqu'on commence a tapé en minuscule ca m'affiche celui en minuscule et vice versa.

Je joins seulement l'initialize car mon fichier est trop gros..

Private Sub UserForm_Initialize()

Me.Height = Application.Height
Me.Width = Application.Width

Dim Collec As New Collection
Dim Collec1 As New Collection
Dim Collec2 As New Collection
Dim Collec3 As New Collection
Dim Collec4 As New Collection
Dim Collec7 As New Collection
Dim Collec8 As New Collection
Dim Collec9 As New Collection
Dim Collec10 As New Collection
Dim Collec11 As New Collection
Dim cell As Range, Itm As Long
With Sheets("Stock")
Sheets("Stock").Unprotect
For Each cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
On Error Resume Next
Collec.Add cell, CStr(cell)
On Error GoTo 0
Next
For Itm = 1 To Collec.Count
Me.ComboRef.AddItem Collec.Item(Itm)
Next

For Each cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
On Error Resume Next
Collec3.Add cell.Offset(0, 1), CStr(cell.Offset(0, 1))
On Error GoTo 0
Next
For Itm = 1 To Collec3.Count
Me.TxtDescription.AddItem Collec3.Item(Itm)
Next

For Each cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
On Error Resume Next
Collec10.Add cell.Offset(0, 14), CStr(cell.Offset(0, 14))
On Error GoTo 0
Next
For Itm = 1 To Collec10.Count
Me.Txtreffabricant.AddItem Collec10.Item(Itm)
Next

For Each cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
On Error Resume Next
Collec4.Add cell.Offset(0, 2), CStr(cell.Offset(0, 2))
On Error GoTo 0
Next
For Itm = 1 To Collec4.Count
Me.Txtinfos.AddItem Collec4.Item(Itm)
Next

For Each cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
On Error Resume Next
Collec1.Add cell.Offset(0, 11), CStr(cell.Offset(0, 11))
On Error GoTo 0
Next
For Itm = 1 To Collec1.Count
Me.ComboFamille.AddItem Collec1.Item(Itm)
Next

For Each cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
On Error Resume Next
Collec7.Add cell.Offset(0, 3), CStr(cell.Offset(0, 3))
On Error GoTo 0
Next
For Itm = 1 To Collec7.Count
Me.TxtStocks.AddItem Collec7.Item(Itm)
Next

For Each cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
On Error Resume Next
Collec8.Add cell.Offset(0, 12), CStr(cell.Offset(0, 12))
On Error GoTo 0
Next
For Itm = 1 To Collec8.Count
Me.Txtlimite.AddItem Collec8.Item(Itm)
Next

For Each cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
On Error Resume Next
Collec9.Add cell.Offset(0, 10), CStr(cell.Offset(0, 10))
On Error GoTo 0
Next
For Itm = 1 To Collec9.Count
Me.Txtreffournisseur.AddItem Collec9.Item(Itm)
Next

For Each cell In .Range("A2:A" & .Range("A65536").End(xlUp).Row)
On Error Resume Next
Collec2.Add cell.Offset(0, 9), CStr(cell.Offset(0, 9))
On Error GoTo 0
Next
For Itm = 1 To Collec2.Count
Me.Combofournisseur.AddItem Collec2.Item(Itm)
Next
For Itm = 1 To Collec11.Count
ListBox4 = Sheets("Stock").Range("L" & Itm)
If ListBox4.ListIndex = -1 Then ListBox4.AddItem Sheets("Stock").Range("L" & Itm)
Next
End With
Sheets("Stock").Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub




MERCI BEAUCOUP
 
Re : Majuscule/ minuscule Combobox

Bonsoir

Ci joint un code à tester.
Quand on utilise un combobox le système exécute son programme, il cherche dans les données du combobox la valeur se rapprochant le plus des caractères saisies sans tenir compte de la casse. Il prend la première valeur.
Il faut donc contourner le problème en écrivant du code.

Un combobox masqué par un textbox permet de résoudre le problème.

Ci joint un userform avec les procédures.
Quand on clique sur le bouton du combo, le textbox disparait, quand on a saisi la valeur le textbox apparait avec la donnée.
Un recherche dans le combo permet d'afficher le texte trouvé.

Code à tester et à améliorer

JP
 

Pièces jointes

- 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

  • Question Question
XL pour MAC mise en forme
Réponses
2
Affichages
590
Réponses
40
Affichages
1 K
Réponses
12
Affichages
352
Retour