IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Liaisons excel dans powerpoint non mises à jour


Sujet :

Macros et VBA Excel

  1. #1
    Membre actif
    Inscrit en
    Janvier 2005
    Messages
    629
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 629
    Points : 203
    Points
    203
    Par défaut Liaisons excel dans powerpoint non mises à jour
    Bonjour à tous,

    J’ai un problème de mise à jour de liaisons excel dans powerpoint. Le souci c’est que mon code fonctionne quand je fais tourner des petits bouts… mais ne fonctionne plus quand je tourne l’intégralité du programme. C’est la raison pour laquelle je me dis qu’il doit y avoir un problème qui aurait un rapport avec des événements qui se lanceraient en même temps ou un truc du genre. J’ai mis des sleep dans mon code mais ça ne change rien.

    J’ai un fichier powerpoint, un fichier excel contenant des tableaux, des fichiers images. Dans mon fichier powerpoint :
    - J’ai lié les fichiers images : le code fonctionne tout le temps
    - J’ai lié les tableaux du fichier excel : le code fonctionne parfois.

    Quand le code ne fonctionne pas, un debug m’a permis de voir que c’est dès qu’ on arrive au 1er tableau excel à mettre à jour que le message d’erreur apparait (voir pièce jointe).

    Avez-vous une idée ?
    Merci de votre aide.

    [EDIT] Comme je pense que le souci vient de l'enchainement des actions, je vous mets les étapes précédentes aussi.



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    Public Function LaunchPowerPoint() As Boolean
        On Error GoTo erreur
     
        Dim ppt As PowerPoint.Application
        Set ppt = CreateObject("PowerPoint.Application")
        ppt.Visible = True
        Dim Pres As PowerPoint.Presentation
        Set Pres = ppt.Presentations.Open(Filename:=PathPPT)
     
        Dim Forme As PowerPoint.Shape
        Dim Diapo As PowerPoint.Slide
     
        For Each Diapo In Pres.Slides
            For Each Forme In Diapo.Shapes
                If Forme.Type = msoLinkedOLEObject Then
                    Forme.LinkFormat.Update ' MESSAGE D ERREUR
                    Sleep 1000
                End If
            Next
        Next
     
        Pres.Save
        ppt.Quit
        Set ppt = Nothing
     
        LaunchPowerPoint = True
        Exit Function
     
    erreur:
        MsgBox "Erreur: " & Err.Number & vbCrLf & Err.Description, vbOKOnly + vbInformation
        LaunchPowerPoint = False
    End Function
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    Public Function RunMacroExcel(MyPath As String, MyFile As String) As Boolean
        On Error GoTo erreur
     
        Dim wdApp As Excel.Application
        Set wdApp = CreateObject("Excel.Application")
        With wdApp
            .Workbooks.Open MyPath
            '.Visible = True
            .Run (MyFile & "!MAJ")
            .ActiveWorkbook.Close SaveChanges:=True
        End With
     
        wdApp.Application.Quit
        Set wdApp = Nothing
     
        RunMacroExcel = True
        Exit Function
     
    erreur:
        MsgBox "Erreur: " & Err.Number & vbCrLf & Err.Description, vbOKOnly + vbInformation
        RunMacroExcel = False
    End Function
    et la sub qui déclenche tout dans laquelle j'actualise mes fichiers excel puis j'actualise mon ppt à partir des données excel:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    '...
        p1_Execution = RunMacroExcel(Pathp1, Filep1)
        Sleep 10000
        p2_Execution = RunMacroExcel(Pathp2, Filep2)
        Sleep 10000
        p3_Execution = RunMacroExcel(Pathp3, Filep3)
        Sleep 10000
        p4_Execution = RunMacroExcel(Pathp4, Filep4)
        Sleep 10000
        p5_Execution = RunMacroExcel(Pathp5, Filep5)
        Sleep 10000
        PPT_Execution = LaunchPowerPoint()
    Images attachées Images attachées  

Discussions similaires

  1. Champ dans la vue non mise à jour
    Par daydream123 dans le forum JSF
    Réponses: 3
    Dernier message: 15/06/2015, 14h18
  2. [PPT-2010] mise a jour automatique tableau excel dans powerpoint
    Par yeti7984 dans le forum VBA PowerPoint
    Réponses: 6
    Dernier message: 27/07/2014, 13h28
  3. Mettre à jour les liens des graphiques d'Excel dans Powerpoint
    Par illight dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/06/2007, 15h17
  4. Vue non mise à jour après modification d'une table
    Par cybernet35 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 19/01/2006, 13h54
  5. Réponses: 4
    Dernier message: 01/12/2005, 14h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo