Excel-vba 모듈에서:
Option Explicit
Sub Test()
Dim Outlook As Object
Set Outlook = CreateOutlook()
Set Outlook = Nothing
End Sub
Function CreateOutlook() As Object
Dim Outlook As Object
On Error Resume Next
Set Outlook = GetObject(, "Outlook.Application")
On Error GoTo 0
If Outlook Is Nothing Then Shell "Outlook"
On Error Resume Next
Do While Outlook Is Nothing
Set Outlook = GetObject(, "Outlook.Application")
Loop
On Error GoTo 0
Set Outlook = CreateObject("Outlook.Application")
AppActivate Application.Caption 'This line doesn't cause an error but excel icon flashes in taskbar and doesn't activate.
Set CreateOutlook = Outlook
Set Outlook = Nothing
End Function
저는 Windows 7 Ultimate, 64비트를 사용하고 있습니다.
답변1
해결되었습니다!
대신에:
AppActivate Application.Caption
이것:
SendKeys "% i"
그 다음에:
Option Explicit
Sub Test()
Dim Outlook As Object
Set Outlook = CreateOutlook()
Set Outlook = Nothing
End Sub
Function CreateOutlook() As Object
Dim Minimize As Boolean
Dim Outlook As Object
Minimize = False
On Error Resume Next
Set Outlook = GetObject(, "Outlook.Application")
On Error GoTo 0
If Outlook Is Nothing Then
Shell "Outlook"
Minimize = True
End If
On Error Resume Next
Do While Outlook Is Nothing
Set Outlook = GetObject(, "Outlook.Application")
Loop
On Error GoTo 0
If Minimize Then SendKeys "% i"
Set Outlook = Nothing
Set CreateOutlook = CreateObject("Outlook.Application")
End Function