Macro pour masquer les lignes non remplies sur une autre page
AudricG
Messages postés
4
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
malgré mes longues recherches, je ne parviens pas à régler mon problème.
Afin de créer les services de travail de chaque journée suivante pour mes collègues, j'utilise un tableau comprenant une base de donné synthétisant toutes les informations en première page (Nom, nombre de présent, date du lendemain, pourcentages de présents...). Et un certains nombre d'autre page sous forme de tableau, reprenant automatiquement les données de la première page (service général, composition chaque équipe...).
Je me heurte à un problème que je n'arrive pas a résoudre:
Je souhaiterai que les lignes du récapitulatif général situé en page 2 n'apparaissent que lorsqu'elle sont "remplies" par les formules. C'est à dire que si rien n’apparaît dans la case de l'équipe, toute la ligne soit masquée automatiquement.
J'ai tenté de créer une macro automatisée pour cela, mais je n'y parviens pas.
Sachant que les données de la page deux (formules), sont remplies grâce à la saisie sur menu déroulant en page 1 (base de donnée).
Concrètement le but est de masquer les lignes entières de 4 à 48sur le tableau deux, si la cellule D de chaque ligne n'est pas remplie par les données du tableau 1.
En désespoir de cause je me tourne vers vous.
J'espère avoir été clair, même si j'en doute.
Je vous joint une copie de la macro. Cela sera surement plus facile a comprendre.
http://www.cjoint.com/c/GIkpBdZ0Ida
malgré mes longues recherches, je ne parviens pas à régler mon problème.
Afin de créer les services de travail de chaque journée suivante pour mes collègues, j'utilise un tableau comprenant une base de donné synthétisant toutes les informations en première page (Nom, nombre de présent, date du lendemain, pourcentages de présents...). Et un certains nombre d'autre page sous forme de tableau, reprenant automatiquement les données de la première page (service général, composition chaque équipe...).
Je me heurte à un problème que je n'arrive pas a résoudre:
Je souhaiterai que les lignes du récapitulatif général situé en page 2 n'apparaissent que lorsqu'elle sont "remplies" par les formules. C'est à dire que si rien n’apparaît dans la case de l'équipe, toute la ligne soit masquée automatiquement.
J'ai tenté de créer une macro automatisée pour cela, mais je n'y parviens pas.
Sachant que les données de la page deux (formules), sont remplies grâce à la saisie sur menu déroulant en page 1 (base de donnée).
Concrètement le but est de masquer les lignes entières de 4 à 48sur le tableau deux, si la cellule D de chaque ligne n'est pas remplie par les données du tableau 1.
En désespoir de cause je me tourne vers vous.
J'espère avoir été clair, même si j'en doute.
Je vous joint une copie de la macro. Cela sera surement plus facile a comprendre.
http://www.cjoint.com/c/GIkpBdZ0Ida
A voir également:
- Les cellules remplies ne peuvent pas être décalées au-delà de la page
- Impossible de supprimer une page word - Guide
- Formule excel pour additionner plusieurs cellules - Guide
- Verrouiller cellules excel - Guide
- Appliquez à tous les paragraphes du document à télécharger, à l’exception des titres et des sous-titres, la mise en forme suivante : chaque paragraphe doit être espacé de 0,42 cm ou 12 pt du paragraphe qui suit les textes ne doivent pas être en retrait à droite et à gauche après ces modifications, sur quelle page se trouve le titre « la cheminée » dans le chapitre « informations diverses » ? - Guide
- Numéro de page word - Guide
4 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
j'imagine que tu utilises Excel. c'est bien cela?
si oui, je suggère ceci:
si oui, je suggère ceci:
Option Explicit Sub audricg() Dim sh As Worksheet Dim ln As Long Set sh = Sheets("deux") For ln = 48 To 4 Step -1 If sh.Cells(ln, 4).Value = "" Then sh.Rows(ln).Hidden = True Else sh.Rows(ln).Hidden = False End If Next ln End Sub
Pardon, je n'ai pas précisé mais j'utilise une LibreOffice.
Je m'excuse encore car mes connaissances en basic remontent au collège et je bloque sur une partie de ta macro:
Libreoffice m'indique que "worksheet" n'est pas une syntaxe valide. Je suppose qu'il s'agit de la page ou se trouve mes données? Malheureusement, celle ci nommée "Données" contient un "é" dont la macro ne veut pas entendre parler.
Ou je me m'égare complètement?
Je m'excuse encore car mes connaissances en basic remontent au collège et je bloque sur une partie de ta macro:
Sub Miseenpage() Dim sh As Worksheet Dim ln As Long Set sh = Sheets("Service affiche") For ln = 48 To 4 Step -1 If sh.Cells(ln, 4).Value = "" Then sh.Rows(ln).Hidden = True Else sh.Rows(ln).Hidden = False End If Next ln End Sub
Libreoffice m'indique que "worksheet" n'est pas une syntaxe valide. Je suppose qu'il s'agit de la page ou se trouve mes données? Malheureusement, celle ci nommée "Données" contient un "é" dont la macro ne veut pas entendre parler.
Ou je me m'égare complètement?
Au lieu d'insister, commencez par donner suite aux propositions qui vous sont faites : https://forum.openoffice.org/fr/forum/viewtopic.php?f=8&t=55614
.
.