|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : janvier 2010 Messages : 70 ![]() |
Bonjour,
Dans un ppt, je colle des graphes venant d'un fichier Excel 2010 (xlsm avec macro), que je colle avec l'option "Paste Link". le but étant de mettre à jour facilement ces graphes en fonction de l'évolution du fichier excel. Or à chaque fois que j'ouvre le ppt et qu'il me demande si je souhaite mettre à jour les liens, je clicke OK et il finit par me dire: "the linked file was unavailable and can't be updated." Or le fichier ppt et excel n'ont ni été bougé, ni renommé! Aprés différents test, j'ai remarqué que cela est du au fait que , mes graphes sont inclut dans des lignes qui sont groupés dans Excel. Par conséquent, si les lignes sont dégroupés et donc visible, pas de soucis, les grahes sont bien mis à jour en automatique dans le PPT. Par contre si, les lignes sont groupés et donc les graphes non visibles, la mise à jour ne fonctionne pas. Par conséquent, je voudrais écrire une macro qui me dégroupe, qui rend visible ligne groupées en faite (pas réellement dégroupé car je vais garder la structure du fichier excel). En effet, j'ai une bonne cinquante de graphes dans plusieurs feuilles et regroupés sous plusieurs "gruupes" par feuille. Et je voudrais donc automatiser une ouverture automatique de toutes ces lignes pour l'update du ppt. J'ai tenté d'enregistrer cette action, mais rien n'est capturé. Existe-t-il une commande VBA pour réaliser cette opération dans tout le fichier? Par avance merci |
|
|
00
|
|
|
#2 | ||
|
Membre expérimenté
![]() Inscription : juillet 2008 Messages : 757 ![]() |
Bonjour,
Tu peux réafficher toute les lignes d'un groupe avec le code suivant Code :
Sheets(1).Cells.EntireRow.Hidden = False Code :
|
||
|
|
00
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Inscription : janvier 2010 Messages : 70 ![]() |
Merci
C'est exactement ce qu'il me fallait. Par contre, l'inverse n'est pas génial Code :
Sheets(i).Cells.EntireRow.Hidden = True J'espérai qu'il ne fasse que refermer les groupes, mais en fait, il cache toutes les lignes Pas grave, je dois juste préciser qu'il ne faut pas sauvegarder le fichier aprés mise à jour côté PPT. A moins que tu connaisses une autre procédure? |
|
|
00
|
|
|
#4 | |
![]() ![]() Didier GONARDFormateur Développeur Office - indépendant Inscription : février 2008 Messages : 2 353 ![]() |
Bonjour,
Citation:
Tu est en mode plan à la base ? vois peut-être ces mots clefs dans l'aide VBA :
cordialement, Didier
__________________
Didier Gonard Ps : Pour noter positivement ou négativement un post, vous pouvez cliquer sur les pouces en bas à droite ! Tutoriels : Voir la liste de mes tutoriels et mon site pro sur ma Page DVP N'oubliez pas de mettre : ..quand c'est le cas !
|
|
|
|
20
|
|
|
#5 |
|
Membre expérimenté
![]() Inscription : juillet 2008 Messages : 757 ![]() |
j'ai jetté un petit coup d'oeil (pour me coucher moins bete ce soir
Si tu sais a quel niveau tu dois les remettre apres tu peux utiliser ca Code :
ActiveSheet.Outline.ShowLevels RowLevels:=1 Si par exemple tu as 3 niveaux et que tu veux replier a moitié, tu mets Code :
ActiveSheet.Outline.ShowLevels RowLevels:=2 |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com