Je viens de faire exemple pour Word, alors je ne recommence pas. Tu traduiras pour Excel, faudra changer les #import, ceux invalides sont pour 97 ou 2000, j'ai mis modele #import pour officeXP qui differe un peu. Tu as le modele, suffit de se servir des objets Excel, regarde dans les tlh et tli generes par VC++. Faut respecter les espaces de nom Excel ou Vba, ne pas se gourrer.
#include <windows.h>
#pragma warning(disable : 4192) #pragma warning(disable : 4049) #pragma warning(disable : 4146) //#import "C:\Program Files\Microsoft Office\Office\MSO9.DLL" no_namespace rename("DocumentProperties","DocumentPropertiesXL") #import "C:\Program Files\Fichiers communs\Microsoft Shared\Office10\MSO.DLL" no_namespace rename("DocumentProperties","DocumentPropertiesXL") #import "C:\Program Files\Fichiers communs\Microsoft Shared\VBA\VBA6\VBE6EXT.OLB" no_namespace //#import "C:\Program Files\Microsoft Office\Office\MSWORD9.OLB" rename("ExitWindows", "ExitWindowsWD") no_dual_interfaces #import "C:\Program Files\Microsoft Office\Office10\MSWORD.OLB" rename("ExitWindows", "ExitWindowsWD") no_dual_interfaces #pragma warning(default: 4192) #pragma warning(default: 4049) #pragma warning(default: 4146)
struct InitOle { InitOle() {CoInitialize(NULL);} ~InitOle() {CoUninitialize();} } _init_InitOle_; // Global Instance to force load/unload of OLE
HINSTANCE hinst;
Word::_ApplicationPtr pWord; Word::_DocumentPtr pDoc;
char szappname[] = "Word01";
inline void TESTHR(HRESULT x) {if FAILED(x) _com_issue_error(x);};
void MsgAWordError(_com_error &e, HWND howner) { MessageBox(howner, (LPCSTR) e.Description(), szappname, MB_ICONEXCLAMATION); }
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, PSTR, int) { hinst = hInstance; _variant_t mydoc("d:\\htmlhelp.doc"); try { pWord.CreateInstance(L"Word.Application"); pWord->PutVisible(1); pDoc = pWord->Documents->Open((VARIANT *)&mydoc); } catch(_com_error &e) { MsgAWordError(e, 0); } return 0; }
BruNews, ciao...
------------------------------- Réponse au message : -------------------------------
> Comment puis-je écrire dans un fichier excel à partir d'une interface concue en c plus plus ? > > Pouvez-cous me donner un exemple de code ? > > Merci d'avance.
|