如题,想问问,如果客户的电脑上没有安装office,怎样才能在其电脑上生成excel文件,并实现读写操作(只需在程序中实现即可)
将excel的库文件如Excel9.olb打包到程序中可以吗? 如果可以的请告诉我详细该怎么弄,或者给个思路也好,谢谢

解决方案 »

  1.   

    没装就悲剧了。除非打包。
    或者装一下wps
      

  2.   

    没有安装office,怎样才能在其电脑上生成excel文件这个跟office没关系,你机器上没装图片显示也一样可以生成BMP,jgp..
    主要你知道它的格式,并遵守它~
      

  3.   

    这个到网上搜一下 很多的 加入OLB文件 工程会加入EXCEL.H 和EXCEL.CPP文件 所以不会有你所说的要打包安装OLB的问题 OLB导入完成后 你的工程和普通的工程操作都一样啦
      

  4.   

    或者你可以去搜一个CSpreadSheet 的类 是专门对EXCEL读写操作的 很方便
      

  5.   

    我试过了,就是在工程中加入excel的那个olb文件 确实多了EXCEL.H 和EXCEL.CPP,然后我把工程编译好了,放到另外一台机器上,可是还是不行
    在程序中
     CString strPath;
    strPath=_T("\Nandflash");
    _Application app;    
    Workbooks books;
    _Workbook book;
    Worksheets sheets;
    _Worksheet sheet;
    Range range;
    COleVariant
    covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
    if (!app.CreateDispatch(_T("Excel.Application"),NULL)) 

    MessageBoxW(_T("Couldn't start Excel and get Application object.")); 在这里就不行了,无法启动excel
      

  6.   

    你上面的方法只是把机器中已经安装好了的excel软件当作一个com中间件来调用,所以没安office当然就用不了。
    你可以把一个空的excel文件随你的软件一起打包给用户,需要新建excel文档时,就把它复制一份再使用。读、写、修改的话,用6楼朋友说的那个类就可以了。
      

  7.   

    6楼的方法我也试过了,普通的机器上确实可以,关键我现在的客户端是wince6,里面odbc也不支持,那个cspreedsheet也就用不了...
      

  8.   

    你使用COM接口的方式操作Excel,当然必须安装Excel了。。没有安装让用户装!
      

  9.   

    Excel操作的封装类
    http://download.csdn.net/source/2411878更多资源参见:
    http://yeah2000.download.csdn.net/
      

  10.   

    1、写excel文件不需要安装office这个是可以确认的。我曾经在VB环境下做过类似的excel报表输出(.xls)文件。只需要使用filedialog创建.xls文件,然后写入的时候按照excel的格式即可。
    2、读excel文件,我想也可以直接把xls文件的内容读出来吧
      

  11.   

    我的wince6环境是,net2.0,不知道支持不支持ado,反正odbc是不行的,我试试先
      

  12.   

    实在不行,我就去研究这种方法,你既然搞过,先问下你,麻烦不麻烦呢,读写excel文件
      

  13.   


    这个类支持设置单元格颜色,宽度高度等。ado方式一般不支持自定义
      

  14.   


    自己写的类?还是spread sheet,哪种方式操作excel?需要哪些支持?你那资源描述里什么都没有,我不想盲目下载.因为我没有分去下载了~~~呵呵!
      

  15.   

    大哥,你那个类你自己看了没有啊,还不是com方式的...
      

  16.   

    http://www.codeproject.com/KB/wtl/WTLExcel.aspx看看这个类吧,我用过的,很好使。
      

  17.   

    if (!app.CreateDispatch(_T("Excel.Application"),NULL))  
    {  
    MessageBoxW(_T("Couldn't start Excel and get Application object."));  
    }
    楼主知道这句话的意思不?这句是判断是否装有Excel。你没装,所以到这句肯定就不往下去了啊。
      

  18.   

    是的,我的问题就是要在没有安装的excel的机器操作excel...