[Résolu][Calc] Masquer lignes non remplies sur autre page

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur: Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !

[Résolu][Calc] Masquer lignes non remplies sur autre page

Messagepar odio » 10 Sep 2017 17:31

Bonjour,

malgré mes longues recherches, je ne parviens pas à régler mon problème. D'autres sujets traitent du problème, mais aucun ne fonctionne car il s'agit de deux pages différentes, ou que je n'ai pas saisi toutes les subtilités.

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 de 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 ("Service affiche"), sont remplies grâce à la saisie sur menu déroulant en page 1 ("Données").

Concrètement le but est de masquer les lignes entières de 4 à 48 sur le tableau deux, si la cellule D de chaque ligne n'est pas remplie par les données du tableau 1.

Je précise que mes connaissances en basic peuvent être qualifiées de pitoyable. Mais j'apprends.
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.
Pièces jointes
Service Test.ods
(46.36 Kio) Téléchargé 12 fois
Dernière édition par odio le 10 Sep 2017 17:41, édité 1 fois.
LibreOffice 5.2.7.2 sous Windows 7
odio
Fraîchement OOthentifié
 
Message(s) : 3
Inscrit le : 10 Sep 2017 17:23

Re: [Calc] Masquer les lignes non remplies sur une autre pag

Messagepar micmac » 10 Sep 2017 17:33

Bonjour,

Vous avez illustré votre question avec des fichiers en provenance d'un site tiers.
Or, souvent ces sites n'assurent aucune pérennité sur les données qu'ils hébergent.

Nous préférerions que vous utilisiez notre service de pièce-jointe dont le lien est mentionné en bas lorsque vous écrivez votre message : https://forum.openoffice.org/fr/forum/f ... forum.html

Veuillez corriger votre message en utilisant le bouton "EDITER" (situé à droite) et en mettant en ligne votre fichier correctement.

Vous en remerciant par avance.
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
 
Message(s) : 4252
Inscrit le : 28 Août 2010 09:45

Re: [Calc] Masquer les lignes non remplies sur une autre pag

Messagepar odio » 10 Sep 2017 17:43

Oh merci. Je n'avais pas du tout vu la fonctionnalité.
J'ai expurgé le document de toutes les données sensibles auparavant néanmoins. Mais merci beaucoup.
LibreOffice 5.2.7.2 sous Windows 7
odio
Fraîchement OOthentifié
 
Message(s) : 3
Inscrit le : 10 Sep 2017 17:23

Re: [Calc] Masquer les lignes non remplies sur une autre pag

Messagepar footeux » 15 Sep 2017 20:06

bonjour,
a mon avis tu trouveras ton bonheur ici
http://ooo-forums.apache.org/fr/forum/v ... =8&t=44903
LibreOffice 5.3.6.1 (x64) sous windows 10
footeux
NOOuvel adepte
NOOuvel adepte
 
Message(s) : 23
Inscrit le : 03 Sep 2017 17:54

Re: [Calc] Masquer les lignes non remplies sur une autre pag

Messagepar Piaf » 16 Sep 2017 15:13

Bonjour
A tester
Code : Tout sélectionner   AgrandirRéduire
Sub miseenpage()
Dim sh As Object, maZone as Object
Dim ln As Long
   sh = thisComponent.Sheets(1)
   maZone = sh.getCellRangeByPosition(3,3,3,47)
   For ln = maZone.RangeAddress.EndRow - 3 To maZone.RangeAddress.StartRow - 3 Step -1
      If maZone.getCellByPosition(0, ln).String = "" Or Left(maZone.getCellByPosition(0, ln).String,1) = " " Then
         maZone.Rows(ln).IsVisible = False
      Else
         maZone.Rows(ln).IsVisible = True
      End If
   Next ln
End Sub
A+
Libre Office Version: Version: 5.3.7 et Apache OpenOffice 4.1.4 Sur Xubuntu 16.04
Piaf
GourOOu
GourOOu
 
Message(s) : 5043
Inscrit le : 25 Nov 2011 19:07
Localisation : Guyane

Re: [Calc] Masquer les lignes non remplies sur une autre pag

Messagepar odio » 28 Sep 2017 18:53

Bonjour et merci pour la réponse. Je suis en train de déménager et j'attends d'avoir un endroit où mettre mon ordinateur pour tester votre solution. Je vous tiens au courant. Merci de votre temps néanmoins.
LibreOffice 5.2.7.2 sous Windows 7
odio
Fraîchement OOthentifié
 
Message(s) : 3
Inscrit le : 10 Sep 2017 17:23


Retour vers Macros et API

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 11 invité(s)