Microsoft 365 Programme VBA

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 !

Simon L.

XLDnaute Nouveau
Bien le bonjour à tous !

Je suis à la recherche d'un programme VBA, j'ai trouvé quelques résultats sur l'internet mais ce n'est pas exactement ce que je recherche.

Je travail dans une imprimerie donc beaucoup de papiers.

J'ai un tableau excel dans lequel j'ai répertorié tous les papiers différents (en colonne) avec les caractéristiques technique propre aux machines d'impression (en ligne).
J'aimerais à l'aide d'un menu déroulant, sélectionner un choix et ainsi afficher les caractéristique propre à ma boite, puis afficher les caractéristique que les fournisseurs nous on fournie, et afficher ceux de ma boite et de nos fournisseurs.
Donc afficher ou masquer des lignes à ma guise selon le choix du menu déroulant.
Est-ce possible techniquement d'avoir ça sur excel ?

Je vous remercie 🙂
 
Le menu est en A1, c'est une liste déroulant contenant "Mon entreprise" ; "Mes fournisseurs" ; "Mon entreprise & Mes fournisseurs".
L'idée serait de pouvoir choisir "Mon entreprise" et d'afficher uniquement les lignes A2 ; A4 ; A6 ; A8. De sélectionner "Mes fournisseurs" et d'afficher uniquement les lignes A3 ; A5 ; A7 ; A9 et de sélectionner "Mon entreprise & Mes fournisseurs" et d'afficher toutes les lignes ensemble.

Si cela paraît trop compliqué ce n'est pas grave je me débrouiller avec la fonction des filtres qui me plait moins mais je m'en accommoderai
 
Re,
En PJ une solution avec la liste déroulante en A1, et :
VB:
Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fin: If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [A1]) Is Nothing Then
        Application.ScreenUpdating = False
        Rows("2:9").EntireRow.Hidden = False
        If Target = "Mon entreprise" Then
            Range("3:3,5:5,7:7,9:9").EntireRow.Hidden = True
        ElseIf Target = "Mes fournisseurs" Then
            Range("2:2,4:4,6:6,8:8").EntireRow.Hidden = True
        End If
    End If
Fin:
End Sub
 

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

Réponses
12
Affichages
1 K
Réponses
4
Affichages
916
Réponses
4
Affichages
757
Retour