【Outlook VBA】エクセルワークシートの内容で予定登録する方法


outlook_vba_worksheet_schedule_eyecatch

みなさまこんにちは、ノグチです。

前回の記事では、OutlookでもVBAは使えるということと、VBAでOutlookの予定を登録する方法をご紹介しました。

【はじめてのOutlook VBA】Outlookの予定を登録する方法
Outlook VBAでコーディングするためのVBEの準備と、VBAで予定を登録する方法をご紹介しています。1件の予定登録の手間は大したことがなくても、複数登録する必要が出てくると面倒臭い...本稿では複数の予定をOutlookにまとめて登録するための第一歩として、単体の予定をVBAで登録する方法をご紹介します。

今回は、まとめて予定を登録してしまおう!ということで、エクセルワークシートに記入した予定の内容を、Outlookの予定に登録する方法をご紹介していきます。

MicroSoft Excel xx.x Object Libraryの参照設

さて、エクセルワークシートに記入された内容で予定登録をするということは、エクセルのブックやシートを参照したり、操作できるようにせねばなりませんね。

そこでまずは、OutlookからExcelの参照設定をしましょう。

(この参照設定は必須ではありませんが、参照設定をした方がコードが短くなるのと、クイックヒントが表示されてコーディングが楽、スペルミスをしにくいということもあるので、特に制限が無いのであれば、参照設定をしておくことをお勧めします。)

OutlookのVBEから、参照設定の画面を開きます。

outlook,参照設定

参照設定の画面を開くまでのメニューパスは、エクセルで参照設定をするときと全く同じなので、下記記事を参考にしてくださいね。

【エクセルVBA】エクセルVBAでOutlookを操作しよう!参照設定とOutlookアプリケーションオブジェクトの取得
エクセルVBAでOutlookのメール送信やタスク作成操作をする前準備として、VBEの参照設定や、Outlookアプリケーションオブジェクトの取得方法をご紹介しています。 VBAとOutlookを組み合わせて使うことで、既に便利に使えているメーラーを更に便利にできるかもしれませんよ。

筆者の環境では、Microsoft Excel 16.0 Object Libraryとなっていますが、使っているofficeのバージョンによって数字の部分が異なります。

MicroSoft Excel xx.x Object Libraryにチェックを入れて「OK」をクリックすれば、参照設定は完了です。

ワークブックオブジェクトとワークシートオブジェクトを取得

さて、参照設定ができたところでエクセルブックやシートを操作するため、必要なオブジェクトを取得していきましょう。

まずは、Excelアプリケーションオブジェクトの取得です。

Excelアプリケーションオブジェクト型の変数を宣言して…
Dim オブジェクト名 As Excel.Application
宣言した変数で、 Excelアプリケーションオブジェクトを取得します。
Set オブジェクト名 = New Excel.Application

後はエクセルブックやワークシートオブジェクトですが、こちらはエクセルでVBAを使うときと同様の記述方法でOK。

こんな感じですね。

エクセルシートに記入した内容をOutlookの予定に登録するコード

では、準備もできたところでエクセルシートに記入した内容をOutlookの予定として登録していきましょう。

デスクトップに「予定.xlsx」というファイルを作って、Sheet1にこんな感じで予定の内容を記入していきます。outlook,予定登録,ワークシート

このワークシートの内容を纏めてOutlookの予定に登録するコードがこちら。

事前通知のプロパティ、ReminderSetプロパティをTrueにして、ReminderMinutesBeforeStartプロパティに「60」をセットしているので、予定の60分前にOutlookが通知してくれます。

Outlook VBAで登録された予定

上のコードを実行して登録された予定がこれらです。

outlook,vba,登録,予定

予定の中身を見てみると…

この通り、エクセルワークシートに記入された内容で予定登録されていますね。

最後に

今回は、エクセルワークシートに記入された内容を、Outlook VBAで予定登録する方法をご紹介しました。

筆者が企業に所属していた頃、やたらと会議やら外勤やらが多かった時期がありまして、この予定の登録が面倒で放置してしまい、社内で「居るかいないかよくわからん。ミーティングに呼べる時間がわからん。」とお叱りを受けたことがあります。

そのとき、予定がまとめて登録できたらいいのにな~と心底思ったものです。

この方法が、みなさまの予定管理ライフを少しでも快適にできれば幸いです。

それでは、最後までお読みいただきありがとうございました!

  1. 【はじめてのOutlook VBA】Outlookの予定を登録する方法
  2. 【Outlook VBA】エクセルワークシートの内容で予定登録する方法

  投稿者プロフィール

ノグチフリーランスPG・SE
元製造子会社SE。
業務システム保守・導入両方やった経験をお伝えすることで、少しでもシステムや手作業に悩まされる人が減ればいいなぁと日々夢見ております。

コメント