[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 !
odio
Fraîchement OOthentifié
Messages : 3
Inscription : 10 sept. 2017 16:23

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

Message par odio »

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.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par odio le 10 sept. 2017 16:41, modifié 1 fois.
LibreOffice 5.2.7.2 sous Windows 7
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9248
Inscription : 28 août 2010 08:45

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

Message par micmac »

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.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur Mac
odio
Fraîchement OOthentifié
Messages : 3
Inscription : 10 sept. 2017 16:23

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

Message par odio »

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
footeux
NOOuvel adepte
NOOuvel adepte
Messages : 23
Inscription : 03 sept. 2017 16:54

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

Message par footeux »

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
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

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

Message par Piaf »

Bonjour
A tester

Code : Tout sélectionner

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: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
odio
Fraîchement OOthentifié
Messages : 3
Inscription : 10 sept. 2017 16:23

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

Message par odio »

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