Copie de feuilles avec liaisons

carolep

XLDnaute Nouveau
Bonjour et bonne année à tous !

Je voudrais recopier une même feuille dans 145 onglets (qui sont déjà créés). Par contre cette feuille de base comporte des liaisons vers la ligne 1 d'un autre tableau excel, et je voudrais que lorsque la feuille 2 sera créée, elle comporte des liaisons vers la ligne 2, la feuille 3 vers la ligne 3 etc. jusqu'à la feuille 145 vers la ligne 145.

Je ne sais pas s'il existe une formule ou une macro pour faire cela, qu'en pensez-vous ? J'ai parcouru le forum sans succès tout l'après-midi...

Merci d'avance !

carole
 

Samantha

XLDnaute Accro
Re : Copie de feuilles avec liaisons

Bonjour et bonne année à toi aussi,

Un peu fastidieux pour la mise à jour des liaisons mais je suis pas vbaiste moua :
  1. Copier les feuilles
    1. Clic droit dans l'onglet de ta feuille/Déplacer ou copier
    2. Cocher la case conserver une copie et choisir l'endroit dans le classeur dans la liste des feuilles existantes
    3. Répéter les points 1 et 2 autant de fois que nécessaire
  2. Rechercher les liaisons dans la première des feuilles copiées
    1. Se positionner en A1 et faire CTRL + F et saisir [ (ALTgr + 5) dans la case des caractères recherchés puisque ce que tu recherche ce sont des liaisons vers un autre classeur
    2. Faire la modification de la formule dans la case trouvée
    3. Recommencer les opérations 1 et 2 autant que nécessaire
  3. Répéter les opérations du point 2 dans chacune des feuilles
Je comprends bien que pour faire le truc sur 145 feuilles c'est un peut longuet mais je sais pas faire autrement sans VBA

A te lire

Sam
 

deudecos

XLDnaute Impliqué
Re : Copie de feuilles avec liaisons

salut Carolp, Samantha,

Je ne suis pas sur que ce soit moins fastidieux en VBA si tous les onglets sont deja crees, par contre, suivant les contraintes, on peut peut etre rendre ca un peu moins "Barbant"...
Donc, si tu veux bien Carol(e?) je te propose de nous mettre un exemple en fichier joint et de nous en expliquer les grandes lignes afin que nous puissions t'aider au mieux.

Bonne journee

Olivier
 

carolep

XLDnaute Nouveau
Re : Copie de feuilles avec liaisons

Merci pour vos réponses Samantha et deudecos.

J'avais effectivement envisagé de faire comme tu le suggères Samantha, mais faire ça 145 fois, ça ne m'emballait pas vraiment !
Et comme je lisais dans les forums que rien n'est impossible sur Excel, je me disais qu'il devait bien exister une manière + pratique de procéder...

Deudecos, si tu penses que le fait que les onglets soient déjà créés complique la procédure, tant pis, on les supprime. C'est juste que j'avais trouvé le code pour créer et nommer les onglets à ma guise avec liens hypertexte depuis mon sommaire, donc je m'étais dit, ce sera déjà ça de fait... Maintenant, ce n'est peut-être pas logique d'avoir commencé par là !?

Je mets un exemple en pièce jointe comme demandé. Pour info, c'est un fichier perso mais que je voudrais créer pour me faciliter la vie au boulot, alors je n'ai mis qu'un exemple.
Ce que je veux faire, c'est automatiser la copie de la fiche de Mme V pour la coller dans les autres onglets en changeant les liaisons pour qu'elles correspondent à Mr W, Mme X etc. Dans ma base source pour les liaisons Mme V est sur la ligne 2, Mr W sur la ligne 3, Mme X sur la ligne 4 etc.
Est-ce que c'est plus clair ?

Merci d'avance pour votre aide :)

Carole
 

Pièces jointes

  • Classeur_exemple.zip
    22.4 KB · Affichages: 127

deudecos

XLDnaute Impliqué
Re : Copie de feuilles avec liaisons

Salut Carole,

En fait, l'idee de creer toutes les feuilles est bonne, mais comme d'habitude, je lis trop vite et je passe a cote de choses importantes... Honte a moi !

Bon, j'ai modifie ton code de facon a ce qu'il te creer les liaisons avec ta base en meme temps qu'il creer tes feuilles.

Par contre, il se peut qu'il y ait une erreur dans le sens ou j'ai fais ca sans pouvoir verifier vu que je ne possede pas la base de donnees. Mais bon, c'est en faisant des essais qu'on en arrive la ou on est (En ce qui me concerne , pas tres loin ;-)) Et donc, essayons, nous verrons bien !

Bonne journee

Olivier
 

Pièces jointes

  • Classeur_exempleV1.zip
    15.3 KB · Affichages: 189
Dernière édition:

carolep

XLDnaute Nouveau
Re : Copie de feuilles avec liaisons

Salut Olivier,

Merci pour ta réponse rapide ! :)
Effectivement, pour les liaisons, c'est nickel ! J'ai compris le principe et j'ai pu l'adapter à mon fichier sans problème, ça marche !

Par contre, je n'ai que les liaisons, le reste de la feuille à copier (texte qui reste identique sur toutes les pages et mise en forme) n'apparait pas.

Est-ce que c'est faisable ou bien faut-il tout coller à la main ?

Encore merci...

Carole
 

carolep

XLDnaute Nouveau
Re : Copie de feuilles avec liaisons

C'est encore moi !

J'ai répondu trop vite...

En fait ça me fait bien les bonnes liaisons (G2 sur l'onglet 2, G3 sur l'onglet 3 etc.), mais je pense qu'il y a une erreur dans la formule car au lieu du texte attendu, j'ai #NOM?.

Et si je regarde la formule, ça m'affiche ='[BDD-clients.xls]Base'!'G2' avec ' ' autour de G2 (ou G3 etc.), et si je supprime les apostrophes (soit ='[BDD-clients.xls]Base'!G2) j'obtiens le texte voulu.

Par contre que faut-il modifier dans la macro pour ne plus avoir ces apostrophes dans mes formules ???

Thank you :eek:
 

deudecos

XLDnaute Impliqué
Re : Copie de feuilles avec liaisons

Re Carole,

Je ne suis sur de rien, mais apres divers essais a mon niveau, ca fonctionne parfaitement. Ce qui pourrait vouloir dire que c'est du a un probleme de compatibilite entre differentes versions d'excel...
Si tu travaille sous une version anterieure a 2003, il est possible que ca vienne de la.
Par contre, la solution, si a ton niveau, c'est possible, ce serait tout simplement d'avoir le fichier de ta base de donnees ouvert pendant que tu fais tes saisies, ce qui aurait pour consequence de t'eviter le code a rallonge pour aller chercher ton info.

En gros :
ActiveCell.FormulaR1C1 = _
"='F:\INSTITUT\SUPPORT\Capitalisation\Clients\[BDD-clients.xls]Base'!K" & a

Ca deviendrait :
ActiveCell.FormulaR1C1 = "=[BDD-clients.xls]Base!K" & a

A toi de me dire si c'est possible et si ca marche comme ca.
Sinon, il nous faudra l'aide de quelqun de plus cale que moi dans le domaine...

Bonne fin de journee

Olivier
 

carolep

XLDnaute Nouveau
Re : Copie de feuilles avec liaisons

Effectivement, j'ai Excel 2000 !
Et j'ai essayé avec la base ouverte pour ne pas avoir le code "à rallonge" et ça me fait toujours les apostrophes...
Donc, toujours coincée mais merci beaucoup pour ton aide Olivier, j'ai déjà bien avancé.
Est-ce que qu'un d'autre aurait eu ce problème d'apostrophe avec Excel 2000 ?

Merci...
 

deudecos

XLDnaute Impliqué
Re : Copie de feuilles avec liaisons

Salut Carole,

J'ai oublie de te dire que pour ne plus avoir les apostrophes il faut modifier le code en le reduisant comme je l'ai ecris plus haut.
Il faut savoir que les apostrophes en question, permettent d'aller chercher une liaison sans avoir a ouvrir le classeur.
Pour avoir une reponse de quelqu'un d'autre sur ce forum, je te conseille d'ouvrir un nouveau post en le titrant : "Liaisons classeur ferme excel 2000"

Bonne journee

Olivier

P.S. En piece jointe, ton classeur modifie pour prendre en compte la copie de ta feuille originale a chaque nouvelle feuille.
 

Pièces jointes

  • Classeur_exempleV3.zip
    19.4 KB · Affichages: 167
Dernière édition:

Discussions similaires

Réponses
7
Affichages
351

Statistiques des forums

Discussions
312 231
Messages
2 086 440
Membres
103 210
dernier inscrit
Bay onais