| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 531 人关注过本帖
标题:求助,关于VC++及Excel的问题
只看楼主 加入收藏
花花19891221
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2010-5-14
收藏
 问题点数:0 回复次数:2 
求助,关于VC++及Excel的问题
我是一个初学者,对VC++只了解一点点,现在有一个问题想请教一下诸位大侠:
在11.xls中有两个数1和2,用VC++编程,调用这两个数,求两数之和,然后输出到22.xls中,
希望能给出完整程序,不要只是主要程序段,我有可能看不懂,谢谢了!!!
搜索更多相关主题的帖子: Excel 
2010-05-14 11:14
songdonghui
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-1-4
收藏
得分:0 
哎,5月份的问题到现在还无人解答,顶一下
2011-01-04 20:45
Leroy8508
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2011-12-15
收藏
得分:0 
你得问题解决了么,我帮你写了份程序,解决了你的问题,一下是相关程序,如果需要我可以给你整个工程
    _Application    app;
   
    Workbooks        books;
   
    _Workbook        book;
   
    Worksheets        sheets;
   
    _Worksheet        sheet;
   
    Range            range;
   
    Range            rangeFrom;
   
    Range            rangeTo;
   
   
    CString cfgFilePath = GetDllPath( );
    cfgFilePath += "\\1.xlsx";

    LPDISPATCH lpDisp; //接口指针
    COleVariant covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);



    //初始化
    if(!AfxOleInit())      
    {
        return ;
    }
    // 创建EXCEL服务器(启动Excel)
    COleException e ;
    if (!app.CreateDispatch(_T("Excel.Application"), &e))
    {
        AfxMessageBox("无法创建Excel应用!");
        e.ReportError();
        return;
    }
    //打开第一个excel表,获取两个数
    books=app.GetWorkbooks();
    lpDisp = books.Open(cfgFilePath,
        covOptional, covOptional, covOptional, covOptional,
        covOptional, covOptional, covOptional, covOptional,
        covOptional, covOptional, covOptional, covOptional,
        covOptional, covOptional
        );
    book.AttachDispatch( lpDisp );
    sheets=book.GetSheets();

    sheet = sheets.GetItem(COleVariant((short)1));

    range = sheet.GetRange(COleVariant(_T("A1")),COleVariant(_T("A1")));
    COleVariant rValue;
    rValue=COleVariant(range.GetValue2());
    rValue.ChangeType(VT_INT);
    int iValue1 = rValue.intVal;
    range = range.GetRange(COleVariant(_T("B1")),COleVariant(_T("B1")));
    rValue=COleVariant(range.GetValue2());
    rValue.ChangeType(VT_INT);
    int iValue2 = rValue.intVal;



//打开第二个Excel表,写求和结果
    CString cfgFilePath1 = GetDllPath( );
    cfgFilePath1 += "\\2.xlsx";
    lpDisp = books.Open(cfgFilePath1,
        covOptional, covOptional, covOptional, covOptional,
        covOptional, covOptional, covOptional, covOptional,
        covOptional, covOptional, covOptional, covOptional,
        covOptional, covOptional
        );
    book.AttachDispatch( lpDisp );
    sheets=book.GetSheets();
   
    sheet = sheets.GetItem(COleVariant((short)1));
   
    range = sheet.GetRange(COleVariant(_T("A1")),COleVariant(_T("A1")));
    CString strTemp;
    strTemp.Format("%d",iValue1+iValue2);
    range.SetValue2(COleVariant(strTemp));

    book.Save();   
    app.Quit();
    app.ReleaseDispatch();

    AfxMessageBox("结束");
2011-12-15 13:04
快速回复:求助,关于VC++及Excel的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017162 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved