Beaucoup trop de if a la suite !!

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 !

Evelynetfrancois

XLDnaute Impliqué
Bonjour le forum
je cherche a faire une boucle ou autre sur ma macro qui fonctionne bien ,mais qui me parait d'une écriture longue et douteuse

Auriez vous qq. chose de plus propre à me proposer

(Je vais de a à z sur Textbox6 et de 2 a 27 sur combobox2)

If TextBox6.Value = "a" Then
ComboBox2.Value = Sheets("MATERIEL").Range("ae2").Value
End If
If TextBox6.Value = "b" Then
ComboBox2.Value = Sheets("MATERIEL").Range("ae3").Value
End If
If TextBox6.Value = "c" Then
ComboBox2.Value = Sheets("MATERIEL").Range("ae4").Value
End If
If TextBox6.Value = "d" Then
ComboBox2.Value = Sheets("MATERIEL").Range("ae5").Value
End If
If TextBox6.Value = "e" Then
ComboBox2.Value = Sheets("MATERIEL").Range("ae6").Value
End If

Merci pour tout et trés bonne journée à tous
E et F
 
Re : Beaucoup trop de if a la suite !!

Bonjour,

peut être ainsi, non testé...
Code:
Dim t() As Variant
t = Array("a", "b", "c", "d", "e")
If Not IsError(Application.Match(textbox6, t, 0)) Then
    ComboBox2.Value = Sheets("MATERIEL").Range("ae" & Application.Match(textbox6, t, 0) + 1).Value
End If
bonne journée
@+
 
Re : Beaucoup trop de if a la suite !!

Bonjour,

Ou avec un bon vieux select case :

Code:
Select Case TextBox6.Value
Case "a"
    ComboBox2.Value = Sheets("MATERIEL").Range("ae2").Value
Case "b"
    ComboBox2.Value = Sheets("MATERIEL").Range("ae3").Value
Case "c"
    ComboBox2.Value = Sheets("MATERIEL").Range("ae4").Value
etc...
End Select

Bonne journée
 
Re : Beaucoup trop de if a la suite !!

MERCI pour vos trois propositions super !!
Celle de pierrot93 me va très bien !!!
Celle de Geo trouve pas me convient également, mais reste longue malgré tout ! mais fonctionne à merveille
Quand a celle de Dormeur 74 , elle me semble bien , très courte , mais chez moi ça beugue
Je mets tout ça de coté
Je vous remercie infiniment pour tout votre travail


Au plaisir de vous lire
EetF
 
Re : Beaucoup trop de if a la suite !!

Chez toi ça plante ? Bizarre, ça marche chez moi. Mais je ne serais pas surpris.
J'aimerais savoir si c'est la fonction Asc( ) qui plante.

Essaye ça pour voir, ça m'intéresse :
Code:
ComboBox2.Value = Sheets("MATERIEL").Range("ae" & VBA.Asc(TextBox6.Value) - 95)
 
- 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

Réponses
4
Affichages
754
Réponses
2
Affichages
589
Retour