Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Simplification d'un code avec boucle?

ArcticM

XLDnaute Nouveau
Bonjour à toutes et à tous,

J'ai un problème de simplification de code.

Mon code:
If Categorie.Value = Sheets("N1 et N2").Range("F3") Then
Dim i As Integer
For i = 2 To Sheets("N3").Range("C65536").End(xlUp).Row
Souscategorie = Sheets("N3").Range("C" & i)
If Souscategorie.ListIndex = -1 Then Souscategorie.AddItem Sheets("N3").Range("C" & i)
Next i
End If


"Categorie" est une combobox
En fonction de la valeur de cette combobox, je souhaite qu'une autre combobox soit alimentée.

Dans ce cas de figure, si "Categorie" est égale à la valeur de la cellule F3 de ma feuille "N1 et N2", alors ma combobox "Souscategorie" est alimentée par la colonne "C" de ma feuille "N3"

Le truc c'est que j'ai environ 170 pavés comme celui ci à faire car:
If Categorie.Value = Sheets("N1 et N2").Range("F4") then ...Souscategorie = Sheets("N3").Range("D" & i)
If Categorie.Value = Sheets("N1 et N2").Range("F5") then ...Souscategorie = Sheets("N3").Range("E" & i)
If Categorie.Value = Sheets("N1 et N2").Range("F6") then ...Souscategorie = Sheets("N3").Range("F" & i)
Etc ....

Est-ce que vous pourriez svp me donner un coup de main pour construire les boucles nécessaires?

Merci d'avance !!
 

Misange

XLDnaute Barbatruc
Re : Simplification d'un code avec boucle?

Bonjour

essaie ceci :

Code:
for j= 4 to ... 'ajuste !
If Categorie.Value = Sheets("N1 et N2").cells(6,j) then ...Souscategorie = Sheets("N3").cells(j-2,i)
next j
 

Discussions similaires

Réponses
4
Affichages
242
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…