Transfert automatique de ligne vers autre feuille

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
JudoCP
Fraîchement OOthentifié
Messages : 7
Inscription : 13 sept. 2021 19:22

Transfert automatique de ligne vers autre feuille

Message par JudoCP »

Bonjour, à tous. J'ai fouillé sur le web et le forum mais je n'arrive pas à trouver ma réponse ou a comprendre les solutions proposées et à les adapter a mon problème.
Je suis en charge de la gestion des licenciés dans un club de judo. J'ai crée un tableau dans lequel je rentre les informations des différents licenciés.
Je souhaiterai pouvoir transférer automatiquement les lignes (ou tout du moins certaines cellules de ces lignes) vers une feuille correspondant au cours du licencié. Si le licencié est en Eveil sur la première feuille je souhaiterai qu'il apparaisse automatiquement dans la feuille nommé Eveil (sans avoir besoin de faire des copier coller manuel). De même pour les pupilles, poussins, benjamins et minimes. Pour les autres catégories (cadets, juniors et séniors) c'est la feuille adulte.
En espérant pouvoir trouver de l'aide.
P.S: les catégories sont "généré" automatiquement en fonction de la date de naissance via une formule.
Merci de votre aide.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par JudoCP le 29 sept. 2021 06:42, modifié 3 fois.
Apache_OpenOffice_4.1.10_Win_x86_
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: Transfert automatique de ligne vers une autre feuille

Message par OOotremer971 »

Bonjour,

Dans le fichier joint, une solution à base de plages et formules nommées. Ces plages et formules sont enregistrées dans un conteneur spécial accessible par le menu Insertion>Noms>Définir ou le raccourci clavier Ctrl+F3 (touche de fonction F3 :) ).
La plage nommée _Source fait référence au tableau principal : $'LISTING 2021-2022'.$A$1:$I$500
La plage nommée _Cours fait référence à la colonne éponyme : $'LISTING 2021-2022'.$J$1:$J$500

La formule nommée _nf (comme nom de feuille, extrait le nom de la feuille dans laquelle elle est saisie :

Code : Tout sélectionner

SUBSTITUE(CELLULE("filename";$A$1);GAUCHE(CELLULE("filename";$A$1);CHERCHE("#$";CELLULE("filename";$A$1);1)+1);"")
Taper

Code : Tout sélectionner

=_nf
dans n'importe quelle feuille pour observer le comportement.

La formule nommée _Ventil, recherche dans la colonne _Cours les occurrences de _nf et retourne les numéros de ligne sur lesquelles il est trouvé. Elle se charge ensuite d'extraire le contenu du tableau _Source correspondant aux numéros de lignes précédemment trouvés ;

Code : Tout sélectionner

SI(LIGNE()-1>NB(SI(_Cours&"s"=_nf;LIGNE($A$1:$A$500);""));"";INDEX(_Source;PETITE.VALEUR(SI(_Cours&"s"=_nf;LIGNE($A$1:$A$500);"");LIGNE($A1));COLONNE()))
Pour remplir les différentes feuilles il suffit de saisir une seul fois =_Ventil en A2 de n'importe quelle feuille puis de valider en maintenant les touches Ctrl et Maj enfoncées lors de l'appui sur la touche Entrée.
Pour l'étendre au reste de la feuille, clic droit en A2>Copier, sélectionner la plage A2:I20 par exemple puis Coller. Le Copier initial peut aussi servir pour alimenter les autres feuilles.

Le fichier pour tester. La première feuille est faite en A2 uniquement. Je te laisse t'essayer au Copier/Coller :)
note : la formule ne fonctionnera pas pour la feuille Adultes car il n'y a pas d'adulte dans la colonne _Cours. Je reviendrai dessus demain parce que là j'ai pas encore fini ma journée.
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
JudoCP
Fraîchement OOthentifié
Messages : 7
Inscription : 13 sept. 2021 19:22

Re: Transfert automatique de ligne vers une autre feuille

Message par JudoCP »

Bonjour OOotremeur971, merci pour ta réponse rapide je regarde ça en fin de journée.
Encore merci de bonne journée.
Apache_OpenOffice_4.1.10_Win_x86_
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: Transfert automatique de ligne vers une autre feuille

Message par OOotremer971 »

Bonjour,

Ajout d'une formule spécifique nommée _Ventil2 pour gérer la feuille Adultes. Pour que les trois catégories adultes soient facilement repérables, j'ai modifié légèrement les formules de la colonne COURS en ajoutant un astérisque aux catégories adultes. Ainsi la formule _Ventile2, repère ces astérisques, et fait remonter les valeurs concernées. J'en ai profité pour corriger quelques incohérences dans les formules de la colonne COURS.

_VEntil2 :

Code : Tout sélectionner

SI(NB.SI(ESTNUM(TROUVE("*";_Cours));1)>=LIGNE()-1;INDEX(_Source;PETITE.VALEUR(SI(ESTNUM(TROUVE("*";_Cours))=1;LIGNE($A$1:$A$500);"");LIGNE($A1));COLONNE());"") 
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
JudoCP
Fraîchement OOthentifié
Messages : 7
Inscription : 13 sept. 2021 19:22

Re: Transfert automatique de ligne vers une autre feuille

Message par JudoCP »

Bonsoir Oootremeur971. MERCI BEAUCOUP, le résultat est exactement ce que je recherchai. Je vais maintenant essayer de comprendre la "logique" et me plonger dans vos explications de la première réponse.
Bonne soirée et encore merci vous m'avez fait gagner un temps énorme dans la suite de la saison sportive et dans les saisons futures.
Apache_OpenOffice_4.1.10_Win_x86_
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: [Résolu] Transfert automatique de ligne vers autre feuil

Message par OOotremer971 »

Bonjour,

Fichier modifié pour afficher la ventilation sur 250 lignes pour chacune des feuilles comme demandé par MP.
@+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
JudoCP
Fraîchement OOthentifié
Messages : 7
Inscription : 13 sept. 2021 19:22

Re: [Résolu] Transfert automatique de ligne vers autre feuil

Message par JudoCP »

Bonjour et merci pour l'aide tout fonctionne parfaitement.
Encore merci
Apache_OpenOffice_4.1.10_Win_x86_
JudoCP
Fraîchement OOthentifié
Messages : 7
Inscription : 13 sept. 2021 19:22

Re: Transfert automatique de ligne vers autre feuille

Message par JudoCP »

Bonjour, je reviens vers vous car j'ai un souci. Le fichier fonctionne parfaitement. Mon problème est que je souhaiterai copier coller les 3 colonnes des feuilles éveils, pupilles, poussins, .... vers des feuilles intitulés présence-éveils, présence-pupilles, .... Mon souci est que quand je fais des copier coller soit les cellules coller sont vides, soit les copies se font dans le sens horizontales et non verticales, soit "le contenu du presse papier dépasse l'espace offert". J'ai essayer des copier coller "simples" et les collage spécial.
Est-ce la formule [Ventil] qui rend difficile le copier coller ?
Peut on également "ventiler" les 3 premieres colonnes dans de nouvelles feuilles?
Merci
Apache_OpenOffice_4.1.10_Win_x86_
zeguedon
ManitOOu
ManitOOu
Messages : 3031
Inscription : 02 juil. 2014 17:25

Re: Transfert automatique de ligne vers autre feuille

Message par zeguedon »

Bonjour,
JudoCP a écrit :je souhaiterai copier coller les 3 colonnes des feuilles éveils, pupilles, poussins, .... vers des feuilles intitulés présence-éveils, présence-pupilles,
Il suffit juste d'écrire dans un cellule de la feuille présence-pupilles :

Code : Tout sélectionner

=pupilles.A1
puis tirer la formule avec la poignée de recopie vers la droite puis vers le bas. Bien-sur si la première valeur que tu veux récupérer est en D2, il faudra alors écrire :

Code : Tout sélectionner

=pupilles.D2
@+
Comment baliser [Résolu] ?
AOO
LibreOffice
Sous Linux
JudoCP
Fraîchement OOthentifié
Messages : 7
Inscription : 13 sept. 2021 19:22

Re: Transfert automatique de ligne vers autre feuille

Message par JudoCP »

Super merci beaucoup. Juste une question est ce qu'il y a moyen d'intégrer 2 catégories dans la formule. Pour être plus clair peut on intégrer des colonnes de la feuille benjamins et des colonnes de la feuille minimes dans la même feuille présence benjamins-minimes.
Merci
Apache_OpenOffice_4.1.10_Win_x86_