Modifier les liaisons entre Excel et Power Point par code

maxwellou

XLDnaute Occasionnel
Bonjour,

Voilà mon soucis, j'ai une présentation Power Point avec 160 slides et autant de liaison sur des fichiers Excel.

Lorsque je veux modifer la sources des données Excel, je suis contraint de modifier un par un les 160 liaisons.

Ma question est : Existe-il une solution pour modifier toutes les sources en une seule fois ? (sachant que les sources sont dans des répertoires différents, ex. ci-dessous:

Source à modifer => c:\tableau de bord\2013\janvier\indicateur 1\fichier excel 01/2013.xls

Source cible => c:\tableau de bord\2013\février\indicateur 1\fichier excel 02/2013.xls


Merci de votre aide.
 

maxwellou

XLDnaute Occasionnel
Re : Modifier les liaisons entre Excel et Power Point par code

Rebonjour,

Voilà un fichier Excel (source) et un PPTX qui recoit cette source.

Mais je fois vous avouer qu'envoyer ces fichiers ne vous permettra pas de mieux visualiser mon soucis. Car mon problème réside dans le fait que je dois changer le chemin de centaine de liaison. et ces fichiers le ne mettent pas en valeur ces chemins.

J'ai essayé ton code, mais la macro tourne correctement mais aucune action malheureusement. snif...

Merci encore de ton aide.
 

Pièces jointes

  • montants exemple Janvier 2013.xlsx
    17 KB · Affichages: 193
  • fichier test Jan 2013.zip
    144.5 KB · Affichages: 169

maxwellou

XLDnaute Occasionnel
Re : Modifier les liaisons entre Excel et Power Point par code

Bon, j'ai réessayer le code que tu m'as donnée...ca marche "presque"...

En fait, pour chaque liaison, la macro ouvre le fichier correspondant ce semble lui posé un problème quand une liaison a pour source le même fichier Excel. En fait, la macro ouvre deux fois de suite un même fichier et cela il n'aime pas beaucoup.

Je vous joins les différents messages que je donne Excel et que pour lesquel je clique valide, suivant ou continuer systématiquement...le soucis c'est qu'il y a 160 slides et il faut cliquer quasiment 400 fois pour arriver au bout du code.
 

tototiti2008

XLDnaute Barbatruc
Re : Modifier les liaisons entre Excel et Power Point par code

Bonjour maxwellou,

Sur l'exemple que je m'étais fait, je n'ai pas de message en cours de macro, même su 2 liens vers le même fichier
Quel est le texte du message qui s'affiche ?
Quelle est ta version d'Office (et donc de Powerpoint) ?
 

maxwellou

XLDnaute Occasionnel
Re : Modifier les liaisons entre Excel et Power Point par code

Ah j'avais envoyé un fichier avec une copie d'écran des différents messages succesifs qui s'affichait. Mais je redonne sur cette réponse.

Sinon je suis en office 2010 (PP et Excel)
 

Pièces jointes

  • msg erreur.docx
    151.5 KB · Affichages: 179

tototiti2008

XLDnaute Barbatruc
Re : Modifier les liaisons entre Excel et Power Point par code

Re,

Tu as vu ce qui était écrit au-dessus de toutes les boîtes de dialogues ? "Microsoft Excel"
C'est donc dans Excel qu'il y a un soucis, on dirait. Je suis bien en 2010 et je n'ai aucun de ces messages
Avant de lancer la macro, tu as bien quitté Excel ?
Les fichiers Excel en question ont des liaisons entre eux, visiblement
C'est dans les liaisons entre classeur que tu dois faire le ménage, ce n'est pas lié à Powerpoint
 

chris

XLDnaute Barbatruc
Re : Modifier les liaisons entre Excel et Power Point par code

Bonjour
Coucou à Tototiti, mromain

Juste une remarque à maxwellou. Sachant que
  • la meilleure macro est celle qu'on n'écrit pas
  • la gestion des liaisons dans Office a toujours été un problème
  • tout archivage sur une autre unité de disque (clé usb, cd, serveur) repose le problème des liaisons
il est conseillé, dans ce type de cas, de
  • mettre dans un même dossier les classeurs et présentations liées
  • garder le nom des classeurs Excel identique d'une période à l'autre
  • et donc remplacer l'identification des périodes dans les noms de fichiers Excel par une gestion rigoureuse à base de dossiers correctement nommés
  • éventuellement, pour favoriser le bon repérage de la période à laquelle se rattache le classeur, y ajouter un onglet ou utiliser les propriétés

J'ai des cas similaires au tien qui ne posent aucun problème d'une période à l'autre en respectant ces règles.
 

maxwellou

XLDnaute Occasionnel
Re : Modifier les liaisons entre Excel et Power Point par code

Bonjour à tous,

Je suis désolé de répondre si tard...j'étais cloué au lit avec une grippe, j'avais oublié que chauffé à 40°c était si dur.

Bon j'ai relancé la macro (Excel fermé) mais elle me redonne les mêmes messages que j'avais cité précédement.

Je précise qu'il n y aucun soucis de liaison dans mes fichiers Excel. Le fait est que la macro "ouvre" un fichier Excel et le referme mais entre les deux la macro tente d'ouvrir un fichier Excel déjà ouvert (la macro n'a pas encore eu le temps de la fermé). Et donc il y a un conflit.

Pour répondre à Chris...Merci beaucoup pour tes conseils. Oui tu as tout à fait raison ! J'aimerai tellement faire comme tu le propose, mais j'ai une directive de l'équipe "audit qualité" chez nous qui m'impose de créer des fichiers Excel avec le mois et année concerné dans le nom du fichier. :-((
 

maxwellou

XLDnaute Occasionnel
Re : Modifier les liaisons entre Excel et Power Point par code

Bonjour à tous,

Pourriez-vous m'aider à nouveau sur ce sujet svp ?

J'ai écouté les conseils que vous m'aviez donné et j'ai finalement changé la règle d'affectation de nom et de chemin de mes liaisons.

Voilà où j'en suis:

Tous les fichiers Excel gardent toujours le même nom (ex: "flux chèques.xlsx). Ainsi j'ai supprimé la notion de "mois" qui était auparavant affecté au fichier Excel (flux chèques_janv 2013.xlsx).

En utilisant le dernier code que vous m'avez transmis, j'ai un débogage que je n'arrive pas régler (cf. fichier joint).

Pourriez-vous m'aider svp ?

Merci
 

Pièces jointes

  • copie ecran bug.xlsx
    231.2 KB · Affichages: 147
  • copie ecran bug.xlsx
    231.2 KB · Affichages: 161
  • copie ecran bug.xlsx
    231.2 KB · Affichages: 159

maxwellou

XLDnaute Occasionnel
Re : Modifier les liaisons entre Excel et Power Point par code

Bonjour,

Je vous sollicite à nouveau... Ca serait super cool si vous pouviez me donner un coup de main pour finaliser mon soucis.


Pour faire un bref résumé de cette discussion:

- Je souhaiterais modifier les liaisons d'une presentation PowerPoint (2010) qui est composé de plus d'une centaine de liens vers autant de fichier Excel (2010).

- La mise à jour native de Powerpoint ne fonctionne pas. J'ai une succession de message d'erreur qui finit par un message m'indiquant que la MAJ n'a pas pu ce faire.

- La construction de mon répertoire où sont stockées les données se faire comme suit:

Old link => C:\Tableau de bord\2013\Mars\flux MP\source.xlsx
Old link => C:\Tableau de bord\2013\Mars\Encours\source.xlsx
Old link => C:\Tableau de bord\2013\Mars\Volumétrie\source.xlsx
Etc....(x100)

New link => C:\Tableau de bord\2013\Juin\flux MP\source.xlsx
New link => C:\Tableau de bord\2013\Juin\Encours\source.xlsx
New link => C:\Tableau de bord\2013\Juin\Volumétrie\source.xlsx
Etc.....

- J'ai utilisé le dernier code de Tototiti2008, mais il m'indique le message d'erreur suivant (cf. PJ), j'essaie depuis des jours à comprendre comment deboger, mais en vain !

Pourriez vous m'aider svp ? J'ai réellement besoin d'un coup de pouce svp...

Merci
 

Pièces jointes

  • copie ecran bug.xlsx
    231.2 KB · Affichages: 143
  • copie ecran bug.xlsx
    231.2 KB · Affichages: 145
  • copie ecran bug.xlsx
    231.2 KB · Affichages: 152

chris

XLDnaute Barbatruc
Re : Modifier les liaisons entre Excel et Power Point par code

Bonjour

Il semble que tu aies deux fois le nom du mois dans le chemin.

Ton PPT sera-til rangé avec les xlsx ? Si oui et si déjà dans le même dossier le nom du fichier doit suffire comme newlink

Edit : nom a priori pas 2 fois le mois, j'ai lu un peu vite. Tu as peut-être intérêt à ouvrir le fichier EXcel : sur de gros volumes de données les MAJ de données liées rament si fichiers fermés.
 
Dernière édition:

maxwellou

XLDnaute Occasionnel
Re : Modifier les liaisons entre Excel et Power Point par code

Non le PPT est dans un répertoire qui lui est propre.

Le PPT est composé de 160 sildes qui sont composé d'une centaine de fichier Excel. les fichiers Excel sont classés par groupe (x5 groupe = x5 répertoires)

Pour le mois qui apparait deux fois, ce n'est pas le cas.... où peut être je n'ai pas compris ta remarque ?

Merci de ton aide.
 

chris

XLDnaute Barbatruc
Re : Modifier les liaisons entre Excel et Power Point par code

Bonjour

J'ai testé sur un PPT qui contient environ 200 liens répartis dans 2 excel. Cela dure un temps fou car il ouvre excel et le referme pour chaque lien ancien et nouveau semble-t-il.

J'ai eu une fois le message : a priori c'est quand Excel ne répond pas assez vite : à part mettre des boucles de temporisation si ta machine ou ton réseau est un peu lent, je ne vois pas...

Tu cites 100 oldlink : tu boucles 100 fois ? Sinon il faut des variables différentes.
 

maxwellou

XLDnaute Occasionnel
Re : Modifier les liaisons entre Excel et Power Point par code

Bonjour,

oui, en effet j'ai 34 fichiers Excel dans lesquels il peut avoir jusqu'à 5 onglets où je fais le lien avec mon PPT.

Mais je ne vois pas bien ce que tu entends pas mettre des variables différentes, je n'en pas plus que celles que j'ai déclaré ?

Merci
 

Discussions similaires

Statistiques des forums

Discussions
312 347
Messages
2 087 501
Membres
103 563
dernier inscrit
samyezzehar