none
操作Excel的问题 RRS feed

  • 问题

  • 在VB2008环境中,使用:WebBrowser1.Navigate("d:\test.xls")打开了Excel.
    在程序中使用:
    Dim Txls As New Excel.Application
    这样可以使VB与Excel进行交互操作,问题是在WebBrowser1中打开Excel后,在系统进程中便会多出一个Excel进程,如果这时系统中只运行了一个Excel进程,那么所有交互操作是没问题的,但是如果系统这时运行了其它Excel进程,这时程序就会出错,问题我想由于系统不知你引用的是具体哪个Excel进程.
    这时我在NavigateComplete2事件中使用下面这句进行赋值指定:
    Txls = e.pDisp
    发现不起任何作用.
    不知要怎样让VB指定具体哪个Excel进程.
    2010年2月22日 14:33

全部回复

  • 你好,

    如果你系统中有一个Excel进程那是会多一个进程。而且你程序关闭的时候那个进程不会关闭。但你编辑内容不会有问题的。系统会正确识别被编辑的进程的。我咨询了一下office开发方面的工程师,你可以调用函数appliction.quit来关闭进程。

    Sincerely,
    Kira Qian


    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Welcome to the All-In-One Code Framework!
    2010年2月25日 7:06
  • 问题是这样的:
    1.你先用Excel新建一个空白文档(这时系统进程肯定有Excel进程,这是正常的也是正确的)
    2.你运行自己编写的程序,程序中使用WebBrowser打开test.xls文档.
    3.你运行上面第2步时,程序会呈死机状态.

    注意:如果系统中没有任何Excel进程,这时运行自己编写的程序没任何问题.
    2010年2月26日 2:28