1. #1
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : février 2017
    Messages : 5
    Points : 3
    Points
    3

    Par défaut Pilotage OLE Excel avec C++ Builder 4

    Bonjour,

    Avec Office 2003, je modifie un fichier Excel à partir de C++ Builder 4, je voudrais éviter la question "Voulez-vouz enregistrer" au moment de la fermeture de mon fichier Excel.
    L'argument true me donne VRAI.XLW existe déjà voulez-vous le remplacer.
    Merci de votre aide.

  2. #2
    Membre chevronné
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    mars 2002
    Messages
    795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mars 2002
    Messages : 795
    Points : 1 763
    Points
    1 763

    Par défaut

    Salut,
    La réponse est simple il suffit de sauvegarder le fichier après sa modification, de cette manière Excel ne demandera plus si il faut sauvegarder les modifications apportées au fichier.
    Par ailleurs C++Builder 4 n'est plus supporté depuis de nombreuses années
    Cordialement
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  3. #3
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : février 2017
    Messages : 5
    Points : 3
    Points
    3

    Par défaut

    Bonjour,

    Merci pour votre réponse.
    Mais c'est justement au moment de sauvegarder par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    vXLWorkbook=vMSExcel.OleFunction("Save");
    que la question apparaît :

    Un fichier nommé 'RESUME.XLS' existe déjà à cet emplacement. Voulez-vous le remplacer ?
    Oui Non Annuler

    Cordialement.

  4. #4
    Membre actif
    Homme Profil pro
    Développeur multiplateformes
    Inscrit en
    mars 2003
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur multiplateformes
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : mars 2003
    Messages : 127
    Points : 263
    Points
    263

    Par défaut

    Pour info la dernière version de C++ Builder est gratuite pour Windows :
    https://www.embarcadero.com/fr/produ.../free-download
    Plus pratique que Builder 4

  5. #5
    Membre chevronné
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    mars 2002
    Messages
    795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mars 2002
    Messages : 795
    Points : 1 763
    Points
    1 763

    Par défaut

    Salut
    Réponse dans la FAQ
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    vXLWorkbook.OleFunction("Close", true, vFileName);
    cdlt
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  6. #6
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : février 2017
    Messages : 5
    Points : 3
    Points
    3

    Par défaut Erreur de compilation

    Bonjour,

    Merci pour votre réponse.
    En compilant les lignes suivantes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    vFileName="C:\\Program Files\\Demande_courbes\\Test.xls";
    vXLWorkbook.OleFunction("Close", true, vFileName);
    J'ai le message d'erreur à la compilation :

    [C++ Erreur] sysvari.h(1869): E2015 Ambiguïté entre 'TVariantT<tagVARIANT>::operator =(const TVariantT<tagVARIANT> &)' et 'TVariantT<tagVARIANT>::operator =(bool)'.

    Merci de votre aide.
    Cordialement.

  7. #7
    Membre chevronné
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    mars 2002
    Messages
    795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mars 2002
    Messages : 795
    Points : 1 763
    Points
    1 763

    Par défaut

    salut
    un des nombreux bugs de c++ builder 4
    essaye
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Variants vConfirm;
    vConfirm=true;
    vXLWorkbook.OleFunction("Close", vConfirm, vFileName);
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  8. #8
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : février 2017
    Messages : 5
    Points : 3
    Points
    3

    Par défaut Erreur compilation

    Bonjour,

    J'ai cette fois 2 fois le message d'erreur en compilant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Variant vConfirm,vFileName;
    vConfirm=true;
    vFileName="C:\\Program Files\\Demande_courbes\\Test.xls";
    vXLWorkbook.OleFunction("Save", vConfirm, vFileName);
    Cordialement

  9. #9
    Membre chevronné
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    mars 2002
    Messages
    795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mars 2002
    Messages : 795
    Points : 1 763
    Points
    1 763

    Par défaut

    phénomène étrange car cet exemple provient de la FAQ
    http://lfe.developpez.com/Excel/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Variant vSaveChanges, vFileName;
     
    vSaveChanges = Unassigned;
    vFileName = "c:\\Home\\Sources\\Cpp\\Test\\Excel\\SaveName.xls";
    vXLWorkbook.OleFunction("Close", vSaveChanges, vFileName);
    ou
    e 1er paramètre de la fonction Close permet de spécifier si les modifications sont enregistrées.

    true : les modifications sont energistrées,
    false : les modifications ne sont aps enrgistrées,
    Unassigned : demande à l'utilisateur.

    Le 2e paramètre de la fonction Close permet de spécifier le nom sous lequel le classeur sera enregistré.

    Ces 2 paramètres sont facultatifs.

    cdlt
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  10. #10
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : février 2017
    Messages : 5
    Points : 3
    Points
    3

    Par défaut

    Bonjour,

    erci encore de votre aide. J'ai contourné la difficulté en ouvrant et modifiant mon fichier Excel sous Builder et pour la sauvegarde et la fermeture, j'ai créé une macro qui effectue ces 2 dernières opérations. Il n' y a plus aucune demande au moment de la sauvegarde.

    Cordialement.

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

Discussions similaires

  1. Pilotage OLE Excel et VBE
    Par Sunchaser dans le forum C++Builder
    Réponses: 34
    Dernier message: 25/02/2007, 20h49
  2. Réponses: 12
    Dernier message: 09/01/2007, 14h28
  3. Pilotage d'Excel avec MinGW
    Par dedesite dans le forum Windows
    Réponses: 11
    Dernier message: 03/08/2006, 17h41
  4. Pilotage OLE Word avec Visual C++
    Par baka02 dans le forum MFC
    Réponses: 2
    Dernier message: 20/03/2006, 13h04
  5. Message d'attente pendant pilotage Ole Excel
    Par yottatiger dans le forum C++Builder
    Réponses: 3
    Dernier message: 13/09/2005, 09h14

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