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

MFC Discussion :

Automation Excel


Sujet :

MFC

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    115
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 115
    Par d�faut Automation Excel
    Bonjour � tous,
    Dans le cadre d'une programme SDI, je souhaite int�grer Excel au sein de mon application (ie voir excel s'encastrer au milieu de ma View et avoir acc�s � toutes ses fonctionnalit�s), l'exemple de la MSDN correspondant visuellement � ce que je veux (http://support.microsoft.com/kb/184663/EN-US/)
    A partir de cet exemple mes soucis sont de :
    - charger un fichier
    - r�cup�rer les �ventuelles modifications et sauvegarder le fichier

    En effet en regardant le code de plus pr�s, on s'aper�oit que l'application cr�e un workbook avec une sheet point final. Y a t'il une fonction pour r�cup�rer toutes les donn�es en un coup (macros incluses) en ouvrant un fichier xls valide ?

    Par ailleurs j'entends beaucoup parler de controle activeX pour r�aliser ce genre d'op�ration mais je ne vois pas l'utilit� par rapport � une DLL classique listant les fonctions permettant la communication avec Excel. Qui peut m'�clairer sur le m�canisme de fonctionnement ?

    Merci beaucoup

  2. #2
    Expert confirm�

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 43
    Localisation : France, H�rault (Languedoc Roussillon)

    Informations professionnelles :
    Activit� : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par d�faut
    Par ailleurs j'entends beaucoup parler de controle activeX pour r�aliser ce genre d'op�ration mais je ne vois pas l'utilit� par rapport � une DLL classique listant les fonctions permettant la communication avec Excel
    Ben essaye de faire �a avec une dll et tu comprendras. Comment connaitre les arguments des fonctions ? Leur type ? Comment exporter des classes ? Comment g�rer la dur�e de vie des objets (allocations / d�sallocation incompatibles entre dll...) ? Comment g�rer les multiples versions de ta dll ?
    La r�ponse � tout �a c'est COM/OLE. En plus �a fait abastraction des dll. Tu d�signes un objet par son nom, pas par une dll. Ca permet d'utiliser ton objet dans des langages de script, dans une page web...

  3. #3
    Membre confirm�

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    115
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 115
    Par d�faut
    Ok je comprends mieux effectivement merci.
    Pour en revenir � la premi�re question, je n'ai peut-�tre pas �t� assez clair :
    Je suis capable de communiquer avec Excel tournant de mani�re ind�pendante (lecture, �criture, ex�cution de macros etc...) mais je souhaiterai que l'ex�cution d'excel se fasse dans une View.
    En gros pour le moment mon code a la t�te suivante
    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
     
    Excel::_ApplicationPtr m_Excel; // Excel instance
    WORKSHEET m_mySheet;    // active sheet
     
    OleInitialize(NULL);
    HRESULT hr = m_Excel.CreateInstance(L"Excel.Application");
    if(FAILED(hr))
    MessageBox("Impossible de lancer Excel","Erreur",MB_OK);
    else
    {
      m_Excel->Visible     = true;
      m_Excel->UserControl = true;
      m_Excel->Workbooks->Open((_bstr_t)m_excelPath);
      m_mySheet = m_Excel->ActiveSheet;
      // TO DO les diverses opérations
      m_Excel->Quit();
    }
    Excel tourne dans son coin et n'est pas "embedded" dans mon application
    Merci !

    [Edition] Finalement j'ai trouv� un contr�le ActiveX nomm� DSOFramer (cr�� par Microsoft) qui marche super bien. On l'ins�re dans la fen�tre et on peut communiquer avec un excel int�gr� � la View

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. automation Excel: s�lection de cellule
    Par jarod_bx dans le forum Access
    R�ponses: 3
    Dernier message: 03/11/2005, 15h33
  2. [Automation Excel] ajuster des cellules excel
    Par willich dans le forum Access
    R�ponses: 4
    Dernier message: 10/10/2005, 10h04
  3. petit probleme avec automation Excel
    Par Tempotpo dans le forum API, COM et SDKs
    R�ponses: 6
    Dernier message: 05/08/2005, 08h57
  4. automation excel : comment indiquer la feuille de travail ?
    Par mat_lefebvre dans le forum Access
    R�ponses: 2
    Dernier message: 04/12/2003, 15h14
  5. Automation Excel
    Par cgo dans le forum API, COM et SDKs
    R�ponses: 4
    Dernier message: 19/03/2003, 15h03

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