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

Langage PHP Discussion :

Erreur à l'ouverture d'un fichier Excel en utilisant COM [PHP 5.0]


Sujet :

Langage PHP

  1. #1
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 303
    Points : 1 380
    Points
    1 380
    Par défaut Erreur à l'ouverture d'un fichier Excel en utilisant COM
    Bonjour,

    j'ai l'erreur suivante lorsque j'essaie d'ouvrir un fichier Excel :
    Erreur technique :
    Source: Microsoft Excel
    Description: Microsoft Excel ne peut accéder au fichier « D:\Profiles\cpuaud\Documents\OGC\ATIH\interfacage_OGC_2015\Argumentaires MCO 2015.xlsx ». Plusieurs raisons sont possibles :
    • Le nom du fichier ou le chemin d'accès n’existe pas.
    • Ce fichier est actuellement utilisé par un autre programme.
    • Le classeur que vous essayez d’enregistrer porte le même nom qu’un classeur actuellement ouvert.
    Le nom du fichier ou le chemin d'accès existe bien (lorsque je le modifie pour quelque chose qui n'existe pas j'obtiens une autre erreur).
    Excel n'est pas ouvert et je suis le seul à pouvoir accéder à ce fichier.
    Les droits du fichier me semblent bon (avec Windows 7).

    Malheureusement, ma version de PHP (5.0.5) ne m'autorise pas à utiliser PHPExcel (et je ne peux pas la changer).
    Mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $nomFicArgumentaires = 'mon fichier.xlsx';
    $excel = new COM("Excel.application"); 
    $excel->Visible = 0;
    // Ouverture du fichier excel
    $book = $excel->application->Workbooks->Open($nomFicArgumentaires);
    L'erreur est sur la ligne du Open.
    Christophe

    Pensez à mettre quand c'est le cas.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu as essayé avec un autre fichier Excel, au meme emplacement que le script et sans espaces dans son nom pour faire un debugage basique ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 303
    Points : 1 380
    Points
    1 380
    Par défaut
    J'ai oublié de le préciser : il n'y a pas d'espace dans le nom et j'ai essayé avec un fichier .xlsx vide pour le même résultat.

    De plus, j'ouvre des fichiers texte depuis le même dossier. Le message semble vraiment provenir d'Excel.
    Christophe

    Pensez à mettre quand c'est le cas.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Comment il peut ne pas y avoir d'espace dans le nom puisqu'il y en a dans l'erreur ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 303
    Points : 1 380
    Points
    1 380
    Par défaut
    Désolé, mon clavier a fourché.
    J'ai essayé avec Classeur1.xlsx mais ça n'a rien changé.
    Christophe

    Pensez à mettre quand c'est le cas.

  6. #6
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 303
    Points : 1 380
    Points
    1 380
    Par défaut
    J'ai essayé avec des fichiers xls (pas xlsx et dans un autre dossier) préalablement créés par une autre partie de l'application et j'ai le même résultat.
    J'ai supprimé le "Visible" mais ça ne change rien.

    Vraiment personne ne voit le problème qu'il doit y avoir dans mon code ?
    Christophe

    Pensez à mettre quand c'est le cas.

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Est-ce que directement depuis le serveur tu arrives à ouvrir le fichier ?

    Tu peux contrôler l'utilisateur qui fait tourner le serveur en faisant
    et verifier qu'il ait bien les droits sur le fichier.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  8. #8
    Membre expérimenté
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2003
    Messages
    1 303
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 303
    Points : 1 380
    Points
    1 380
    Par défaut
    Je viens de trouver la solution ici : http://forum.wampserver.com/read.php?1,125815
    La voici :
    Lancer la commande : MMC comexp.msc /32
    Puis aller dans Services de composants / Ordinateurs / Poste de travail / Configuration DCOM

    Il faut ensuite chercher : "Microsoft Excel Application".
    Clic avec le bouton de droite puis sur Propriétés.
    Onglet "identité".
    Normalement, ce qui est coché est "l'utilisateur exécutant" => cocher "l'utilisateur interactif"
    Christophe

    Pensez à mettre quand c'est le cas.

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

Discussions similaires

  1. [SP-2010] erreur à l'ouverture d'un fichier excel
    Par mimi1255 dans le forum SharePoint
    Réponses: 1
    Dernier message: 03/10/2011, 14h15
  2. Réponses: 1
    Dernier message: 28/03/2008, 16h06
  3. Ouverture d'un fichier excel predefini
    Par nberthonneau dans le forum Access
    Réponses: 10
    Dernier message: 13/06/2007, 22h14
  4. Réponses: 2
    Dernier message: 06/04/2005, 12h01
  5. Réponses: 2
    Dernier message: 22/07/2002, 12h13

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