Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Outlook VBA开放式excel_Excel_Vba_Outlook_Excel 2007_Outlook 2007 - Fatal编程技术网

Outlook VBA开放式excel

Outlook VBA开放式excel,excel,vba,outlook,excel-2007,outlook-2007,Excel,Vba,Outlook,Excel 2007,Outlook 2007,我正在尝试从outlook打开现有的excel工作表。我可以看到工作簿打开了,然后立即又关闭了。我已将Excel.Application设置为可见。有什么想法吗?这是代码 Function openNewForm(toDoSubject) MsgBox ("Called") Dim xlApp As Object Dim sourceWB As Workbook Dim sourceSH As Worksheet Set xlApp = CreateOb

我正在尝试从outlook打开现有的excel工作表。我可以看到工作簿打开了,然后立即又关闭了。我已将Excel.Application设置为可见。有什么想法吗?这是代码

Function openNewForm(toDoSubject)
    MsgBox ("Called")
    Dim xlApp As Object
    Dim sourceWB As Workbook
    Dim sourceSH As Worksheet

    Set xlApp = CreateObject("Excel.Application")

    With xlApp
        .Visible = True
        .EnableEvents = False
    End With


    strFile = "C:\Users\Peter\Documents\ASI\OrderSystem\NewOrderSheet.xlsm"

    Set sourceWB = Workbooks.Open(strFile, , False, , , , , , , True)
    Set sourceSH = sourceWB.Worksheets("OrderForm")
    sourceWB.Activate
End Function

同样,此代码正在outlook中运行。我想在文件打开后保持打开状态

我弄明白了。我打开了另一个工作簿,然后在试图打开第二个工作簿之前关闭了它,这干扰了它。为了解决这个问题,我打开了excel应用程序,并将工作簿对象重置为我想要的新工作簿

我弄明白了。我打开了另一个工作簿,然后在试图打开第二个工作簿之前关闭了它,这干扰了它。为了解决这个问题,我打开了excel应用程序,并将工作簿对象重置为我想要的新工作簿

我刚刚在Outlook中尝试了这段代码,它很好地打开了Excel并保持打开状态(Office2007)。我在即时窗口中调用了这个函数,也许在调用宏的地方还发生了其他事情来中断它?这很奇怪,令人沮丧。我想不出什么会打断它。我把代码放进了它自己的模块中,我仍然有同样的问题。有什么想法吗?为什么这是一个
函数
?将其更改为
Sub
。我刚刚在Outlook中尝试了这段代码,它很好地打开了Excel并保持打开状态(Office 2007)。我在即时窗口中调用了这个函数,也许在调用宏的地方还发生了其他事情来中断它?这很奇怪,令人沮丧。我想不出什么会打断它。我把代码放进了它自己的模块中,我仍然有同样的问题。有什么想法吗?为什么这是一个
函数
?将其更改为
Sub
。查看您的问题是否有答案请将其标记为答案,即使您自己回答:)如果您的问题有答案,请将其标记为答案,即使您自己回答:)