Liens entre feuille

Bonjour,

j'ai un soucis, j'ai quelques notions de vba mais pas suffisamment pour arriver à résoudre mon problème

en fait je souhaite lier deux colonnes sur deux feuilles cela est bien fait sauf que je passe par ce code :

Sheets("Module1").Range("A13:A" & Sheets("Module1").[A65000].End(xlUp).Row).AdvancedFilter Action:=xlFilterCopy, _
        CopyToRange:=Range("E8"), Unique:=False
Sheets("Module1").Range("T13:T" & Sheets("Module1").[T65000].End(xlUp).Row).AdvancedFilter Action:=xlFilterCopy, _
        CopyToRange:=Range("H8"), Unique:=False

mais mon grand malheur est lorsque je modifie dans ma feuille module1 ma feuille reporting va bien se mettre a jour seulement elle ne va créer une ligne pour insérer ma modification du coup les informations lier au ligne suivante ne vont pas se décaler et le tableau va se fausser!!

quelqu'un pourrait m'éclairer s'il vous plait!!

Salut et bienvenue sur le Forum

Sur la base d'un bout de code, ce n'est pas facile de te répondre. Peux-tu nous fournir un exemple de ton fichier ?

Cordialement.

Merci de votre reponse, comment pourrai je attacher mon fichier ?

joindre un fichier

Si ça ne passe pas, essaie tout d'abord de comprimer ton fichier. Sinon, il y a d'autres moyens, mais moins intéressants.

Amicalement.

Voila vous trouverai mon exemple parce que pour le moment je trouve pas c'est tres pratique merci de votre aide!!

11trame.xlsm (150.69 Ko)

Salut,

Tu as beaucoup de codes créés avec l’enregistreur de macro, ce qui donne des tonnes de lignes inutiles et ce qui rend les choses absolument incompréhensibles.

Je te propose alors que tu m’indiques – directement dans ton fichier - un ou deux exemples précis de ce que tu as comme données à disposition et de ce que tu désires que la macro réalise. Mais essaie de ne pas te perdre dans des explications trop compliquées, va à l’essentiel en te rappelant que je ne connais rien à ton travail.

Par exemple sur la base du fichier reçu, je ne vois absolument pas quelles données de la feuille « Module1 » devraient être reportées sur ta feuille « Reporting » (ou inversement ?), ni quelles lignes devraient être rajoutées sur une feuille ou l’autre.

A te relire.

Bonjour et merci encore pour ton aide en fait je dois partir totalement à l'envers,

dans la feuille module je veux que si il y a une somme supérieur à 0 dans la colonne T alors dans la feuille reporting se crée une ligne comprennant la ligne correspondant mais juste avec les info des colonnes A et T de la feuille module

tu comprend se que je souhaite ?

et en fait dans ma macro les seuls écritures concernant l'enregistreur ne sont que de la mise en forme si tu veux je peux les enlever !

Salut,

Yvouille a écrit :

Je te propose alors que tu m’indiques – directement dans ton fichier - un ou deux exemples précis de ce que tu as comme données à disposition et de ce que tu désires que la macro réalise.

On ne peut pas vraiment dire que tu as fait ce que je t’ai demandé

Question 1) A quel moment voudrais-tu que les données de la feuille «Module1» soit transférées dans la feuille «Reporting1» si le total de la colonne T est supérieur à 0 ? A chaque fois que tu modifies une ligne (ça risque de faire souvent) ? En bloc pour toutes les lignes lorsque tu sélectionnes la feuille «Reporting1» (une sorte de mise à jour juste avant consultation) ? Lorsque tu le déciderais par l’intermédiaire d’un bouton ? Autres ?

Question 2) Dans ta feuille «Reporting1», tu as tout plein de lignes existantes. Sont-elles toujours à disposition ? Correspondent-elles aux lignes à reporter ? Faut-il ajouter des lignes manquantes selon les besoins ?

Question 3) Tes données des colonnes A à T de la feuille «Module1» sont à reporter dans quelles colonnes de la feuille «Reporting1» ?

Merci de bien vouloir répondre à ces trois questions en reprenant leur numérotation. Fournis-moi éventuellement des exemples précis (directement dans le fichier ou non).

Amicalement.

Bonjour,

pour répondre à tes questions plus précisément, car c'est vrai que je vois se que j'essaye de faire mais ce n'est surement pas claire. alors je vais essayer de répondre correctement:

le principe est que d'abord je rempli le module 1 ensuite je me penche sur la feuille reporting

Question 1) A quel moment voudrais-tu que les données de la feuille «Module1» soit transférées dans la feuille «Reporting1» si le total de la colonne T est supérieur à 0 ? A chaque fois que tu modifies une ligne (ça risque de faire souvent) ? En bloc pour toutes les lignes lorsque tu sélectionnes la feuille «Reporting1» (une sorte de mise à jour juste avant consultation) ? Lorsque tu le déciderais par l’intermédiaire d’un bouton ? Autres ?

donc je souhaite que une mise à jour se produise à l'aide d'un bouton pour que la feuille reporting 1 récupere les infos dans la feuille module 1 des colonnes A et T lorsque la colonne T >0 et se colle donc dans la Colonne E et H (reporting1)

sauf que pour compliquer cela la feuille module 1 peut etre modifier apres que l'on est commencer a remplir les autres colonne de la feuille reporting et donc décale tout pour l'instant.

Question 2) Dans ta feuille «Reporting1», tu as tout plein de lignes existantes. Sont-elles toujours à disposition ? Correspondent-elles aux lignes à reporter ? Faut-il ajouter des lignes manquantes selon les besoins ?

enfaite dans la feuille Reporting il n'y as rien qui existe apres la ligne 8, le reste n'est pour le moment qu'une extraction des information Colonne A et T de la feuille module 1. mais qui se décale et qui ne prend pas en compte le colonne T>0

Question 3) Tes données des colonnes A à T de la feuille «Module1» sont à reporter dans quelles colonnes de la feuille «Reporting1» ?

Les information des colonne A et T de la feuille Module 1 sont reporter dans les colonne E et H de la feuille Reporting1

J'espere avoir été assez claire, personnellement j'ai essaye d'avancer en continuant a garder la base que tu as et en creant un nouveau bouton qui supprime les lignes quand la colonne H de reporting1 comprend des valeur =0 mais ce n'est vraiment pas pratique et ma macro est tres longue a s'executer.

Je te remercie réellement de l'aide que tu pourrais m'apporter!!

Pour le fichier que je viens de joindre il faut d'abord faire la mise a jour puis épurer je pense que tu comprendras se que je veux dire ( les 2 boutons).

Amicalement.

12trame.xlsm (152.90 Ko)

Je ne comprends strictement rien à tes explications, tu t'embrouilles dans des explications inutiles et il me semble qu'il manque les informations essentielles. Par exemple tu me dis que les informations des colonnes A à T (20 colonnes) vont dans les colonnes E à H (4 colonnes) !!

Essaie encore de me fournir un fichier tel qu’il se présente avant le transfert et introduis-y des données à transférer (mais pas plus que 2 ou 3 lignes) puis explique-moi avec précision quelles données doivent être transférées où et je verrai si j’arrive à comprendre ta demande ou non.

Si tu réponds encore une fois à mes questions, ne les reprends plus dans ton texte, ça n fait qu'embrouiller les choses, mais reprends uniquement la numérotation.

Cordialement.

je ne reprend pas les colonne de A à T dans E Juste la colonne A Module 1 va dans la colonne E Reporting et la colonne T module 1 va dans la colonne H Reporting.

et cela pour toute les valeur supérieur à 0 dans la colonne T module 1.

C'est cellule de la feuille Module 1 vont se placer dans le meme ordre dans la feuille Reporting a partir de la ligne 9.

Point d'attention lorsque j'insere une ligne dans la feuille module 1 je souhaite que elle soit pris en compte dans ma feuille reporting

Mais à l'heure actuelle sur mes feuilles avec ma macro comme les autres cellule de la feuille reporting sont complété manuellement lorsque j’insère cette ligne dans la feuille module 1, la colonne A et T de la feuille module 1 vont bien être reporter dans la feuille reporting en créent un décalage avec tout ce qui est rentré manuellement. et cela ne me convient pas

cordialement


et je viens de t'envoyer l'exemple ou tu a juste a cliquer sur les deux boutons mise à jour et épurer pour que tu puisse voir se que je souhaite tu comprendra se qui reste car je ne l'ai pas mise a jour expres pour que tu voyes

Yvouille a écrit :

Je ne comprends strictement rien à tes explications ...........

Essaie encore de me fournir un fichier tel qu’il se présente avant le transfert et introduis-y des données à transférer (mais pas plus que 2 ou 3 lignes) puis explique-moi avec précision quelles données doivent être transférées où et je verrai si j’arrive à comprendre ta demande ou non.

Regarde la feuille reporting elle ne contient que la ou c'est different de 0 dans la colonne T en feuille module le résultat serait parfait la si cette extraction se faisait automatiquement désoler d'etre aussi farfellu.


je ne veux pas plus que

si la colonne T module1 >0

la colonne A module 1 dans la E reporting et T module 1 dans H reporting à

9trame.xlsm (115.56 Ko)

C'est bon, je crois que je t'ai maintenant bien compris. Je regarde ça durant la fin de semaine, au plus tard en début de semaine prochaine.

Cordialement.

Salut,

J’ai beau tourné ton fichier dans tous les sens, je ne vois pas de solution simple afin de rajouter des lignes sur la feuille Reporting au fur et à mesure des modifications de la feuille Module.

Je te propose alors une solution de rechange que j’illustre dans le fichier ci-joint. Il s’agit de préparer la feuille Reporting de manière à y avoir autant de lignes que sur la feuille Module et de déjà y placer des formules reportant toutes les données possibles de la feuille Module. Ainsi, si tu modifies quoi que ce soit sur la feuille Module, la feuille Reporting est actualisée au niveau des données.

Ensuite tu places un code dans le code de la feuille Reporting qui actualise cette feuille chaque fois que tu la sélectionnes au niveau des lignes à masquer ; ce code masque alors les lignes (depuis la ligne 2) avec un montant de 0 dans la colonne D. Ainsi, seules les lignes «actives » sont visibles sur ta feuille Reporting.

Est-ce qu’une transformation de ton fichier dans ce sens est envisageable ? Si oui, tu devrais préparer une feuille Reporting avec les formules nécessaires au report des données et je me chargerais de la partie macro au niveau du masquage des lignes.

Cordialement.

12lexal-v1.zip (11.03 Ko)

je te remercie de ton aide j'essaye de voir se que je peux de la maniere que tu me dis et je tiens au courant des que possible

Je viens de regarder ta macro yvouille ça pourrait être bien mais cela ne réponds pas a mes attentes car le module est changé toutes les semaines et se ne sont jamais les memes lignes donc merci pour ton aide mais il faut que je trouve autre chose .

Salut,

Avec ma proposition, tu peux prévoir autant de lignes que nécessaires dans ta feuille "Module" et les modifier comme tu l'entends chaque semaine. Comme la feuille "Reporting" serait créée de manière à ce que toutes les modifications effectuées sur la feuille "Module" soient reportées sur la feuille "Reporting" (par formules), je ne vois pas ce qui manquerait.

Ensuite, lorsque tu sélectionnes la feuille "Reporting", seules les lignes comportant autre chose que des zéros seraient visibles. Que veux-tu de plus ?

Amicalement.

ah d'accord j'avais mal compris mais du coup es que mon tableau module peut comprendre mille ligne par exemple? ou comment dois je appliquer les formules sur plus de ligne?


en fait le soucis et que lorsque je rajoute des lignes sur la feuille module elle ne se rajoutent pas seules dans la feuille reporting et c'est pour moi un impératif de ne pas chercher se que j'ai rajouté ou non ?

Salut,

J’avais compris que tu avais dans ta feuille «Module» des lignes en réserve en suffisance, puisque tu as plein de lignes non-remplies (par exemple pour ton chapitre «Etude Mécanique» tu as 28 lignes à disposition, de la ligne 15 à la ligne 42, et seulement la moitié environ comporte des données dans la colonne A) et que tu voulais qu’en fonction du remplissage ou non de ces lignes, elles soient répercutées ou non sur la feuille «Reporting».

Dans le fichier ci-joint, je te montre alors – POUR CE CHAPITRE «Etude Mécanique» UNIQUEMENT - comment du pourrais placer des formules sur la feuille «Reporting» afin d’en reprendre les libellés de la colonne A «Module» dans la colonne E «Reporting» et les chiffres de la colonne T «Module» dans la colonne U «Reporting».

Ensuite, j’ai placé une macro sur la feuille «Reporting» qui masque ou laisse apparaître les lignes du chapitre «Etude Mécanique» de la feuille «Reporting» lorsque tu sélectionnes cette dernière en fonction des chiffes de sa colonne U (si 0 en U, la ligne est masquée). Cette colonne U – ajoutée par moi – peut être masquée si tu le désires.

A la place des 28 lignes du chapitre «Etude Mécanique», tu pourrais aussi en avoir 100, afin d'avoir plus de réserve, non ?

Amicalement.

9trame-v1.xlsm (120.77 Ko)
Rechercher des sujets similaires à "liens entre feuille"