selection cellules precises

madgicbobbyboon

XLDnaute Junior
Bonjour,

je cherche a créer un fichier "gestion des incidents" avec du VBA
Dans la combobox3 se trouve les incidents, et dans la cbx2 l'étage. (liste dans la feuil"BASE"
Lorsque je choisis un item de la cbx3 (exemple mobilier (Bureau) je voudrai que dans la cbx2 n'apparaisse pas les items (toiture & chaudière)...car pas encore de bureau sur les toits :)
J'ai également un probleme technique avec la sélection des BAES (combobox3) car les items de la Combobox1 sont en doublons

D'avance merci
 

Pièces jointes

  • gest des incide.xlsm
    204.6 KB · Affichages: 26

Oranger

XLDnaute Occasionnel
Bonjour,

Je te propose le code suivant à ajouter à comboBox3_Change. Il faut un peu modifier la présentation de l'onglet "Base" et suivant l'incident tu devra remplir toutes les lignes la base afin de déterminer quels étages doivent être affichés (avec des croix) mais dans l'idée ça marche ;)

Voici le code que j'ai ajouté (Regardes dans le fichier ci-joint avec la présentation à modifier ce sera plus explicite).

'on récupère le numéro de la ligne de l'incident
Var_Ligne = Application.WorksheetFunction.Match(UserForm.ComboBox3.Value, Sheets("BASE").Range("A:A"), 0)

'on vide la combobox étage
ComboBox1.Clear

'on parcours les colonnes "étages"
For i_col = 5 To 9

'si il y a une croix on ajoute l'intitulé de la ligne 2
If Sheets("BASE").Cells(Var_Ligne, i_col) = "X" Then
ComboBox1.AddItem Sheets("BASE").Cells(2, i_col)
End If
Next i_col

Bonne soirée,

Cdlt,

Oranger
 

Pièces jointes

  • Copie de gest des incide.xlsm
    195.9 KB · Affichages: 19

madgicbobbyboon

XLDnaute Junior
Bonjour,

Je te propose le code suivant à ajouter à comboBox3_Change. Il faut un peu modifier la présentation de l'onglet "Base" et suivant l'incident tu devra remplir toutes les lignes la base afin de déterminer quels étages doivent être affichés (avec des croix) mais dans l'idée ça marche ;)

Voici le code que j'ai ajouté (Regardes dans le fichier ci-joint avec la présentation à modifier ce sera plus explicite).

'on récupère le numéro de la ligne de l'incident
Var_Ligne = Application.WorksheetFunction.Match(UserForm.ComboBox3.Value, Sheets("BASE").Range("A:A"), 0)

'on vide la combobox étage
ComboBox1.Clear

'on parcours les colonnes "étages"
For i_col = 5 To 9

'si il y a une croix on ajoute l'intitulé de la ligne 2
If Sheets("BASE").Cells(Var_Ligne, i_col) = "X" Then
ComboBox1.AddItem Sheets("BASE").Cells(2, i_col)
End If


Next i_col

Bonne soirée,

Cdlt,

Oranger

Bonjour et merci
Cela fonctionne cool.
Merci pour le descriptif..il reservira
 

Discussions similaires

Statistiques des forums

Discussions
312 084
Messages
2 085 192
Membres
102 809
dernier inscrit
Sandrine83