2017-08-14 15 views
1

Outlookのカレンダーを使用して、地域のコミュニティセンターで会議室の予約を管理しています。カレンダーの予定/予約ごとに、ファイルからオブジェクトを挿入します(Excelスプレッドシート)。スプレッドシートとファイルのパスは、予約ごとに同じです。 ScreenshotOLEオブジェクトをOutlook Appointmentシリーズに埋め込むためのVBAマクロ

enter image description here

私はマクロを使って、このスプレッドシートを埋め込む簡素化したいと思います。残念ながら、Outlookは私に記録することを許可していないので、私はVBAでそれをスクリプトで把握しようとしています。 Wordにマクロを記録して、Outlookにコピーするかどうかを確認しようとしました(オブジェクト変数が設定されていません)。言葉によって生成されたコードは、私がDIMの​​を指定する必要があると思うが、私は私の深さから抜け出すことだし、私は今のところ、Googleのソリューションを見つけることができませんしてきた

Selection.InlineShapes.AddOLEObject ClassType:= _ 
    "Excel.SheetMacroEnabled.12", FileName:= _ 
    "K:\OutlookCalendar.xlsm" _ 
    , LinkToFile:=False, DisplayAsIcon:=False 

ました。誰かが正しい方向に私を向けることができますか? 、Outlookで記録したマクロを使用するためには今

Click Tools/Referencesを -

+0

例を参照してくださいhttps://stackoverflow.com/a/44599739/4539709 – 0m3r

答えて

0

ファーストは、Outlookは、Wordで使用されるオブジェクトを認識できるように、「Microsoft WordのX.0オブジェクトライブラリ」への参照を設定しました変数をSelectionオブジェクトItemに設定する必要があります。

Option Explicit 
Public Sub UseWord() 
    Dim Inspector As Outlook.Inspector 
    Dim wdDoc As Word.Document 
    Dim Selection As Word.Selection 

    Set Inspector = Application.ActiveInspector() 
    Set wdDoc = Inspector.WordEditor 
    Set Selection = wdDoc.Application.Selection 

    '-> And insert your recorded macro here 

End Sub 

IDEツール/参照

enter image description here

+1

素晴らしい、ありがとう - それはうまくいきます。リファレンスを設定する最初のステップは私をほぼ投げた - 私はあなたのポストでツール/リファレンスをクリックしようとすることを認める気にするよりも長い時間を費やした! (私のような人は、VBAウィンドウで[ツール|リファレンス]をクリックし、Microsoft Word x.0オブジェクトライブラリが選択されていることを確認してください) – Rob

関連する問題