Reading Cell Values In Excel 2000 Using C++

I have an Excel 2000 spreadsheet that I am trying to read data from using C++.  I have used the code in the following link to get me started and this works well.

I am now trying to tweak the code so rather than create a new spreadsheet, I open an existing one (which I have figured out how to do), and then read the data in a given cell (which I can't do).  I have found numerous examples of Excel automation on the internet, but have yet to find one that shows how to do this.  Any help would be greatly appreciated.
Who is Participating?
jkrConnect With a Mentor Commented:
Take a look at ("Get Cell Text of Excel"):

COleVariant VOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
    _Application objApp;
    Window objWin;
    Range objRange;
    VARIANT ret;
    CLSID clsid ;
    if (CLSIDFromProgID(OLESTR("Excel.Application.9"), &clsid) == NOERROR)
     // Recherche du server Excel s'il est lance
     LPUNKNOWN lpUnk ;
     LPDISPATCH lpDispatch ;
     if (GetActiveObject(clsid, NULL, &lpUnk) == S_OK)
      HRESULT hr = lpUnk->QueryInterface(IID_IDispatch, (LPVOID*)&lpDispatch) ;
      lpUnk->Release() ;
      if (hr == NOERROR)
       objApp.AttachDispatch(lpDispatch, TRUE) ;
    objWin = objApp.GetActiveWindow();
    objRange = objWin.GetActiveCell();
    ret = objRange.GetValue();
    BSTR txt;
    txt = ret.bstrVal;
    char *p=_com_util::ConvertBSTRToString(txt); 

Open in new window

reidy_boyAuthor Commented:
Took a bit of playing around with, but got there in the end.  I realised other examples weren't working because I had the wrong .olb version installed for Excel 2000, but this solution included the code that I sould have been using.  Excellent, thanks.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.