zoukankan      html  css  js  c++  java
  • VS2010通过OLE操作Excel2010

    **//自我总结
    1.通过类向导添加excel.exe添加需要的六个类
    2.将6个XXX.h头文件中的 #import “…….EXCEL.EXE”注释掉
    3.将6个头文件加到CXXXXDlg.cpp头文件里
    4.创建两个button按钮,添加代码
    5.添加全局变量用于存储
    6.修改字符集【工程》属性》通用》字符集》Use Multi-Byte Character Set】
    7.CRange.h中DialogBox()前面添加下划线变成_DialogBox()
    至此,编译能够完全通过**
    转自:http://blog.csdn.net/superbfly/article/details/18040445
    我使用的语言是C++,网上有许多这方面的例子,但由于VS与Office版本的问题,都需要一些调整,下面是我在使用时遇到的一些问题集解决方法:

    操作步骤:

    a. project->add class->MFC class from typelib 导入Excel.exe,一般都在C:/Program Files/Microsoft Office/Office14路径下;

    b. 选中以下几项_Application,_WorkSheet,_WorkBook,WorkSheets,WorkBooks,Range,然后导入;

    c. 导入后在工程中添加CApplication,CWorkSheet,CWorkBook,CWorkSheets,CWorkBooks,CRange这些类;

    然后需要把这些类的头文件中的第一句话 #import “…….EXCEL.EXE” nonamespace 删除;

    引入之后如果编译遇到错误,Not enough actual parameters for macro ‘DialogBoxW’. 让人头疼!

    解决方法是在CRange类中,

    VARIANT DialogBox()
    {
    VARIANT result;
    InvokeHelper(0xf5, DISPATCH_METHOD, VT_VARIANT, (void*)&result, NULL);
    return result;
    }

    DialogBox()前面添加下划线变成_DialogBox(),解决了!

  • 相关阅读:
    AtCoder Beginner Contest 157
    AtCoder Beginner Contest 158 BCD
    1046 A^B Mod C
    AtCoder Beginner Contest 150
    Aizu
    【建图】【思维】拓扑排序建图+序列自动机——swerc Gym
    【思维】单调栈——cf1366E
    【数学】gcd数论——cf1366D
    【思维】cf 1365 DEF
    【思维】构造——ICPC NEAU B
  • 原文地址:https://www.cnblogs.com/fag888/p/5789120.html
Copyright © 2011-2022 走看看