A voir également:
- Affichage des cellules macro
- Formule excel pour additionner plusieurs cellules - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Verrouiller des cellules excel - Guide
- Macro word - Guide
- Affichage double ecran - Guide
12 réponses
Gyrus
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
524
6 sept. 2016 à 08:30
6 sept. 2016 à 08:30
Bonjour,
Ajoute Rows.Hidden = False en début de traitement
A+
Ajoute Rows.Hidden = False en début de traitement
If T.Address = "$B$37" Then
Rows.Hidden = False
Select Case T.Value
...
A+
Bonjour,
Merci pour votre retour,
Le tableau se perd encore, j'ai rajouter la ligne mais cela ne change rien.
Merci d'avance pour votre aide
Cordialement
Merci pour votre retour,
Le tableau se perd encore, j'ai rajouter la ligne mais cela ne change rien.
Private Sub Worksheet_Change(ByVal T As Range)
'Cette partie permet l'affichage du tableau des arrêts en fonction de la liste déroulante
Application.ScreenUpdating = False
If T.Address = "$B$37" Then
Rows.Hidden = False
Select Case T.Value
Case Is = "AB"
Rows("39:71").Hidden = False
Rows("72:138").Hidden = True
Case Is = "CD"
Rows("39:71").Hidden = True
Rows("72:104").Hidden = False
Rows("105:138").Hidden = True
Case Is = "EF"
Rows("39:104").Hidden = True
Rows("105:138").Hidden = False
End Select
End If
'Cette partie permet l'affichage des lignes si cellule supérieur à 0 AB
Rows("41:44").Hidden = [E25].Value <= 0
Rows("63:70").Hidden = [E25].Value <= 0
Rows("45:50").Hidden = [E26].Value <= 0
Rows("27").Hidden = [E26].Value <= 0
Rows("51:56").Hidden = [E27].Value <= 0
Rows("28").Hidden = [E27].Value <= 0
Rows("57:62").Hidden = [E28].Value <= 0
'Cette partie permet l'affichage des lignes si cellule supérieur à 0 CD
Rows("74:77").Hidden = [E29].Value <= 0
Rows("96:103").Hidden = [E29].Value <= 0
Rows("78:83").Hidden = [E30].Value <= 0
Rows("31").Hidden = [E30].Value <= 0
Rows("84:89").Hidden = [E31].Value <= 0
Rows("32").Hidden = [E31].Value <= 0
Rows("90:95").Hidden = [E32].Value <= 0
End Sub
Merci d'avance pour votre aide
Cordialement
Gyrus
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
524
6 sept. 2016 à 09:20
6 sept. 2016 à 09:20
La ligne de code que tu as ajoutée permet d'avoir un état initial avec toutes les lignes affichées.
Voici ce que je comprends.
Ton programme est séparé en 2 parties, la première qui effectue un masquage/Affichage de lignes lorsque B37 est modifiée
et la seconde qui effectue un masquage/Affichage de lignes lorsque une cellule quelconque de la feuille est modifiée, le traitement s'effectuant alors en fonction des valeurs de la plage E25:E32
Tu dois donc chercher les incohérences dans la (ou les) partie(s) concernée(s).
Ne connaissant pas le résultat attendu, j'aurais du mal à t'en dire d'avantage.
A+
Voici ce que je comprends.
Ton programme est séparé en 2 parties, la première qui effectue un masquage/Affichage de lignes lorsque B37 est modifiée
If T.Address = "$B$37" Then
...
End If
et la seconde qui effectue un masquage/Affichage de lignes lorsque une cellule quelconque de la feuille est modifiée, le traitement s'effectuant alors en fonction des valeurs de la plage E25:E32
Rows("41:44").Hidden = [E25].Value <= 0
...
Rows("90:95").Hidden = [E32].Value <= 0
Tu dois donc chercher les incohérences dans la (ou les) partie(s) concernée(s).
Ne connaissant pas le résultat attendu, j'aurais du mal à t'en dire d'avantage.
A+
Bonjour,
Merci pour votre retour,
Cela est exacte, l'objectif c'est que en B37 il y a un menu déroulant pour sélectionner le tableau en fonction du besoin AB,CD,EF.
Le tableau commence à la ligne 39 pour finir en ligne 138 chaque tableau est égale à 1/3
Ensuite se qui est important c'est que si la cellule D28 est = 0 il doit masqué dans le tableau les lignes 57 à 62 et pareil pour les suivants pour évité d'avoir un tableau trop important alors que les parties que je souhaite caché son inutile.
Merci d'avance
Cordialement
Merci pour votre retour,
Cela est exacte, l'objectif c'est que en B37 il y a un menu déroulant pour sélectionner le tableau en fonction du besoin AB,CD,EF.
Le tableau commence à la ligne 39 pour finir en ligne 138 chaque tableau est égale à 1/3
Ensuite se qui est important c'est que si la cellule D28 est = 0 il doit masqué dans le tableau les lignes 57 à 62 et pareil pour les suivants pour évité d'avoir un tableau trop important alors que les parties que je souhaite caché son inutile.
Merci d'avance
Cordialement
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Gyrus
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
524
6 sept. 2016 à 13:34
6 sept. 2016 à 13:34
Si tu veux que j'aille plus loin, il faut joindre un fichier.
Pour cela, tu peux utiliser
https://www.cjoint.com/
A+
Pour cela, tu peux utiliser
https://www.cjoint.com/
A+
Bonsoir,
Je vous joint un fichier demain matin.
Merci pour votre aide et j'espère à demain
Cordialement
Je vous joint un fichier demain matin.
Merci pour votre aide et j'espère à demain
Cordialement
Bonjour,
Je joint un tableau excel j'ai désactiver une partie du macro.
http://www.cjoint.com/c/FIhfY1AaJoM
Merci d'avance
Cordialement
Je joint un tableau excel j'ai désactiver une partie du macro.
http://www.cjoint.com/c/FIhfY1AaJoM
Merci d'avance
Cordialement
Gyrus
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
524
7 sept. 2016 à 10:15
7 sept. 2016 à 10:15
Bonjour,
Je comprends bien la première partie avec l'affichage des tableaux selon la sélection en B37.
Cette partie semble fonctionner correctement.
Par contre, ne connaissant pas la finalité de la seconde partie, j'ai un peu plus de mal à comprendre.
J'ai modifié le code.
Essaie de l'adapter en fonction de tes besoins.
https://www.cjoint.com/c/FIhinP0Wxaz
A+
Je comprends bien la première partie avec l'affichage des tableaux selon la sélection en B37.
Cette partie semble fonctionner correctement.
Par contre, ne connaissant pas la finalité de la seconde partie, j'ai un peu plus de mal à comprendre.
J'ai modifié le code.
Essaie de l'adapter en fonction de tes besoins.
https://www.cjoint.com/c/FIhinP0Wxaz
A+
Bonjour,
Merci pour votre retour,
Je vais tester est je reviens vers vous.
1000 merci
Bien cordialement
Merci pour votre retour,
Je vais tester est je reviens vers vous.
1000 merci
Bien cordialement
Bonjour,
Cela fonctionne pratiquement comme je le souhaite, y a t’il possibilité encore que si
D23 = 0 alors D24 caché
D22 = 0 alors D23 caché
D21 = 0 alors D22 caché
D27 = 0 alors D28 caché
D26 = 0 alors D27 caché
D25 = 0 alors D26 caché
D31 = 0 alors D32 caché
D30 = 0 alors D31 caché
D29 = 0 alors D30 caché
De plus si je change une valeur que cela soit instantanément changer.
Exemple si D30 = 50 il affiche de suite la ligne 31 et les lignes 84 à 89
Cela serait alors parfait.
Merci d'avance
Cela fonctionne pratiquement comme je le souhaite, y a t’il possibilité encore que si
D23 = 0 alors D24 caché
D22 = 0 alors D23 caché
D21 = 0 alors D22 caché
D27 = 0 alors D28 caché
D26 = 0 alors D27 caché
D25 = 0 alors D26 caché
D31 = 0 alors D32 caché
D30 = 0 alors D31 caché
D29 = 0 alors D30 caché
De plus si je change une valeur que cela soit instantanément changer.
Exemple si D30 = 50 il affiche de suite la ligne 31 et les lignes 84 à 89
Cela serait alors parfait.
Merci d'avance
Gyrus
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
524
7 sept. 2016 à 16:32
7 sept. 2016 à 16:32
Ce que tu indiques n'est pas cohérent.
D30 = 0 alors D31 caché
Tu ne peux pas masquer une seule cellule.
Le masquage/affichage doit être effectué sur une ligne (ou une colonne) entière.
De plus si je change une valeur que cela soit instantanément changé. Exemple si D30 = 50 il affiche de suite la ligne 31 et les lignes 84 à 89
C'est ce que fait le code avec la plage "E21:E32". Tu peux prendre exemple sur cette partie du programme.
Si tu as besoin d'éclaircissements sur le code, n'hésites pas à demander.
A+
D30 = 0 alors D31 caché
Tu ne peux pas masquer une seule cellule.
Le masquage/affichage doit être effectué sur une ligne (ou une colonne) entière.
De plus si je change une valeur que cela soit instantanément changé. Exemple si D30 = 50 il affiche de suite la ligne 31 et les lignes 84 à 89
C'est ce que fait le code avec la plage "E21:E32". Tu peux prendre exemple sur cette partie du programme.
Si tu as besoin d'éclaircissements sur le code, n'hésites pas à demander.
A+