1. #1
    Membre à l'essai
    Inscrit en
    novembre 2010
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : novembre 2010
    Messages : 54
    Points : 17
    Points
    17

    Par défaut BuiltinDocumentProperties d'un PWP ouvert par Excel

    Bonjour,

    A partir d'Excel j'effectue un import de données dans un PWP via le clique sur un bouton

    J'ai mis des conditions pour vérifier si le PWP n'est pas déjà ouvert
    Mon problème est que je n'arrive pas à faire fonctionner le BuiltinDocumentProperties pour obtenir le nom de l'utilisateur qui utilise le PWP

    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    Function IsFileOpen(filename As String)
        Dim filenum As Integer, errnum As Integer
        Dim pptapp As Object
        Set pptapp = CreateObject("powerpoint.application")
        Dim oPPTApp As PowerPoint.Application
        Set oPPTApp = New PowerPoint.Application
     
        On Error Resume Next   ' Turn error checking off.
        filenum = FreeFile()   ' Get a free file number.
        ' Attempt to open the file and lock it.
        Open filename For Input Lock Read As #filenum
        Close filenum          ' Close the file.
        errnum = Err           ' Save the error number that occurred.
        On Error GoTo 0        ' Turn error checking back on.
     
        ' Check to see which error occurred.
        Select Case errnum
     
            ' No error occurred.
            ' File is NOT already open by another user.
            Case 0
             IsFileOpen = False
             With oPPTApp
                .Visible = True
                .Presentations.Open ("S:\DSI France - PMO\FLASH_REPORT\FLASH_REPORT.pptm")
                .Run ("FLASH_REPORT.pptm!FLASH_REPORT")
            End With
     
            ' Error number for "Permission Denied."
            ' File is already opened by another user.
            Case 70
                IsFileOpen = True
                With oPPTApp
     
                        MsgBox "Le PowerPoint Flash_Report.pptm est déjà utilisé par " & _
                        Presentations("FLASH_REPORT.pptm").BuiltinDocumentProperties(7).value
     
                End With
     
            ' Another error occurred.
            Case Else
                Error errnum
        End Select
    End Function
    L'erreur tombe sur la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     MsgBox "Le PowerPoint Flash_Report.pptm est déjà utilisé par " & _
               Presentations("FLASH_REPORT.pptm").BuiltinDocumentProperties(7).value
    Le message d'erreur est "un composant ActiveX ne peut pas créer d'objet"
    Je ne met pas la fonction dans PWP car si il est en lecture seule je ne veux pas qu'il s'ouvre

    Quelqu'un à déjà eu le cas ou a une idée ?

    Merci
    Bonne journée

  2. #2
    Membre émérite Avatar de antonysansh
    Homme Profil pro
    Chargé d'études RH
    Inscrit en
    mai 2014
    Messages
    1 079
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chargé d'études RH
    Secteur : Finance

    Informations forums :
    Inscription : mai 2014
    Messages : 1 079
    Points : 2 364
    Points
    2 364

    Par défaut

    Pas sûr que ça règle le problème (je n'ai pas regardé le code en détails) mais si tu utilises With mets un point devant presantations
    Antony

    Mieux vaut ne rien dire et passer pour un con que de l'ouvrir et ne laisser aucun doute à ce sujet.
    Gustave Parking


    Si le post vous est utile un petit fait toujours plaisir et pensez à passer en

    Et surtout -> Balise CODE

  3. #3
    Membre à l'essai
    Inscrit en
    novembre 2010
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : novembre 2010
    Messages : 54
    Points : 17
    Points
    17

    Par défaut

    Bonjour Antony,

    Merci pour ta réponse c'est gentil
    Effectivement j'ai avancé, le message d'erreur est maintenant "Item FLASH_REPORT not found in the Presentations collection"

    Je vais essayer de comprendre, si tu as une autre idée n'hésites pas

  4. #4
    Membre à l'essai
    Inscrit en
    novembre 2010
    Messages
    54
    Détails du profil
    Informations forums :
    Inscription : novembre 2010
    Messages : 54
    Points : 17
    Points
    17

    Par défaut

    Bonjour,

    Pour palier à mon problème j'ai utilisé le code de Silky Road
    Disponible ici : http://silkyroad.developpez.com/VBA/...etesClasseurs/

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2016] Problème ouverture d'un PWP par Excel -> Lecture seule
    Par cha_choux dans le forum Excel
    Réponses: 2
    Dernier message: 15/03/2017, 10h57
  2. Envoyer un fichier Excel ouvert par Access
    Par challe1976 dans le forum VBA Access
    Réponses: 1
    Dernier message: 23/01/2015, 12h01
  3. pb de reconnaissance de base access par excel
    Par xycoco dans le forum Access
    Réponses: 1
    Dernier message: 02/02/2006, 20h19
  4. VBA : ouverture d'un Userform sans passer par excel
    Par jemigo dans le forum Macros et VBA Excel
    Réponses: 28
    Dernier message: 23/11/2005, 16h28
  5. Nombre maximum de fichiers ouverts par processus
    Par galinoo dans le forum Windows
    Réponses: 3
    Dernier message: 27/10/2004, 17h47

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