3

を使用してExcel VBAでOutlook 2010オブジェクトを作成した場合

Sub CreateOL()
    On Error Resume Next
        Set myOlApp = GetObject(, "Outlook.Application")
    If Err.Number = 429 Then
        Set myOlApp = CreateObject("Outlook.Application")
    End If
    On Error GoTo 0
End Sub

強制的myOLAPPに送受信することは可能ですか?誰かがそれがどのように行われたかアドバイスできますか?

次のことを試しましたが、うまくいきません。

 Set nsp = myOlApp.GetNamespace("MAPI")
 Set sycs = nsp.SyncObjects
 For i = 1 To sycs.Count
    Set syc = sycs.Item(i)

    syc.Start

 Next

また、myOlApp を表示するにはどうすればよいですか? myOlApp.Visible = TrueそしてmyOlApp.Application.Visible = True動作しません

ありがとうございました

4

1 に答える 1

2

どのバージョンの Outlook を使用していますか? これを Outlook 2010 でテストしたところ、動作しました。

:エラー処理は行っていません。私はあなたがそれを大事にすることができると確信しています。

Public Sub Sample()
    Dim oLook As Object
    Dim nsp As Object, objSyncs As Object, objSync As Object
    Dim i As Long

    Set oLook = GetObject(, "Outlook.Application")

    Set nsp = oLook.GetNamespace("MAPI")

    Set objSyncs = nsp.SyncObjects

    For i = 1 To objSyncs.Count
        Set objSync = objSyncs.Item(i)
        objSync.Start
    Next
End Sub

MS Outlook には 2 種類のウィンドウがあります

  1. フォルダと
  2. 個々のアイテムのインスペクター。

特定のフォルダーを表示する場合は、そのフォルダーのエクスプローラーを起動してから、.Activateまたはメソッド.Display.を使用することもできます。MAPIFolder.Display

于 2012-09-06T15:08:46.680 に答える