2016-11-20 65 views
0

我在Outlook中写入一个宏来设置excel文件中打开的单元格的值。当从outlook vba运行宏时显示excel文件

Sub test() 
    Dim objExcel As Object, WB As Object, WS As Object 
    Set objExcel = GetObject(, "Excel.Application") 
    objExcel.Visible = True 
    Set WB = objExcel.Workbooks("Book1.xlsm") 
    WB.Activate 
    Set WS = WB.Worksheets("Sheet1") 
    AppActivate "Microsoft Outlook" 
    WS.Range("A1").Value = "hoho" 
End Sub 

我的问题是,当我运行此宏,细胞正常的设定值,但我还是站在Outlook应用程序,怎么能当我在Outlook中运行宏将其设置为单元格的值,并显示这个Excel文件,而不是仍然站在前景

+0

您只需激活展望 – 2016-11-20 15:05:57

+0

我复制你的线给我的脚本,请看看我的脚本编辑之上,但它得到错误“无效的过程调用或参数”。请告诉我它有什么问题 – Bruce

回答

1

要做到这一点的方法是尽量减少应用程序窗口,然后使其最大化。

objExcel.WindowState = xlMinimized 
objExcel.WindowState = xlMaximized 
+0

我将你的行复制到了我的脚本中,请查看我上面编辑过的脚本,但是它会收到错误“无效的过程调用或参数”。请告诉我它有什么问题 – Bruce

+0

Hello Thomas对不起,迟到了,我整天都在学校忙。谢谢你的回答,我检查了你的功能,但它仍然不显示excel文件。我的excel是开放的,我站在outlook中,我希望当我在outlook中运行宏时,它将excel中的单元格设置为并显示此文件,而不是使用鼠标单击此任务栏上的excel文件 – Bruce

+0

@Bruce我想知道。我更新了我的答案。 – 2016-11-21 14:56:13