程序有两个窗口主窗FrmMain和另一个窗口FrmSlv.
在主窗口放置Excel控件,并做一些操纵EXCEL的工作.
存在如下几种情况:
1.在主窗口中控制Excel,一切正常.
2.在主窗口的一个Button上触发事件,弹出FrmSlv,在FrmSlv上有一个Button,控制FrmMain的Excel控件填充数据,一切正常.
3.在主窗口的ExcelWorkSheet的OnBeforeDoubleClick事件中,弹出FrmSlv(FrmSlv.Show),在FrmSlv上的Button控制FrmMain的Excel控件填充数据时,弹出的'被呼叫方拒绝接受呼叫'异常.
4.把第3种情况的FrmSlv.Show改为FrmSlv.ShowModule, 一切正常.
5.改为在ExcelWorkSheet的OnBeforeDoubleClick事件中向FrmMain发送消息,FrmMain
接到消息后,弹出FrmSlv, 异常依旧.奇怪,请高手帮助解答,谢谢!!

解决方案 »

  1.   

    是不是你调用的时候你的excel已经打开了呢?
      

  2.   

    结束excel的进程再试就可以了,我也遇到过这种情况。
    顺便想请教一下楼主是在form上直接打开excel吗?我现在用的是olecontainer,但是很麻烦,不知可否交流交流?
      

  3.   

    我知道是什么原因了.
    就是在双击Excel以后,Excel单元格处于编辑状态,在这种状态下,对Excel的操作就会提示'被呼叫方拒绝接受呼叫'的异常.如果Excel没有处于编辑状态,那么,就不会出现这种异常.那么,我如何控制不让单元格处于编辑状态呢?楼上,我是在form上直接打开excel的.