
画像: iStockphoto.com/cosmin4000
Microsoft Outlookでは、デフォルトのメッセージフォームを変更することはできませんが、カスタムフォームを作成して代わりに使用できます。カスタムフォームを追加したら、リボンに追加すれば、今と同じワンクリックメールメッセージをそのまま使用できます。欠点は、いくつかの手順を踏む必要があることです。手順は多いですが、プロセス自体は複雑ではありません。
日付を自動化するには、新しいメールの件名に日付を自動的に追加するカスタムフォームを作成して公開します。次に、フォームを開くプロシージャ(マクロ)を記述します。最後に、[ホーム] タブに新しいグループを追加し、ワンクリックでフォームを開けるようにします。この記事の目的は、カスタムフォームの実装方法を示すことなので、フォーム自体はシンプルです。後で、すべてのオプションを調べて、より効率的に作業できるフォームを作成できるようにしてください。
Windows 10 64ビットシステムでOffice 365を使用しています。以前のバージョンでもカスタムフォームを作成できますが、手順が異なります。この解決策はコードに依存しているため、メール(オンライン版)には適していません。手順を再度作成する代わりに、ダウンロード可能な.clsファイルをインポートできます。
Outlookでカスタムフォームを設計する方法
すべてのカスタムフォームは、デフォルトと同じ機能を備えた標準フォームをベースにしています。フォームを非表示にしたり、追加したり、スクリプトを追加して自動化したりすることも可能です。今回の場合は、件名に日付を追加するだけです。まずは、以下の手順に従ってカスタムフォームを作成(デザイン)する必要があります。
- 「開発」タブをクリックし、「カスタムフォーム」グループの「フォームの選択」をクリックします。「開発」タブが有効になっていない場合は、「ファイル」タブをクリックし、左側のペインで「オプション」を選択します。次に、「リボンのユーザー設定」を選択します。右側の「メインタブ」リストで「開発」にチェックを入れ、「OK」をクリックします。
- 表示されるダイアログで、標準フォーム ライブラリ (既定値) の[メッセージ] (図 A ) を選択し、[OK] をクリックします。
- 新しいメールウィンドウで、「開発」タブをクリックします。次に、「フォーム」グループの「このフォームのデザイン」をクリックします。これで標準フォームが編集モードで開きます。
- [件名] コントロール内をクリックし、[ツール] グループの [プロパティ シート] をクリックします。
- 表示されるダイアログで、[値] タブをクリックします。
- 「このフィールドの初期値を設定」にチェックを入れ、すぐ下のコントロールに「Date」と入力します(図B)。デフォルトの計算方法は、必要な方法になっています。(時刻を表示したい場合は「Time」と入力します。)
- [OK]をクリックします。
図A

図B

必要に応じて、「フォーム」グループの「このフォームを実行」をクリックして追加内容を確定できます。図Cは、件名に現在の日付が表示されている、おなじみのメールウィンドウを示しています。カスタムフォームの編集モードに戻るには、「開発」タブをクリックしてください。「閉じる」ボタンをクリックすると、作業内容が失われます。この手順は省略できますが、作業内容を確認することをお勧めします。また、プロパティについては説明していませんので、後で戻って確認してみてください。
図C

フォームを公開する
このままでは、フォームはあなたにも他のユーザーも利用できません。利用できるようにするには、フォームを公開する必要があります。そのためには、[フォーム] グループの [発行] をクリックし、ドロップダウンから [フォームに名前を付けて発行] を選択します ([フォームの発行] および [フォームに名前を付けて発行] オプションは、[保存] および [名前を付けて保存] コマンドと同様に機能します)。Outlook の既定では個人用フォーム ライブラリが選択されているため、これを使用します。フォームを他のユーザーが利用できるようにするには、フォームをパブリック フォルダーに発行します。これについてはこの記事では説明しません。共有すると、パブリック フォルダーへのアクセス許可を持つユーザーのみがカスタム フォームにアクセスできます。表示されるダイアログで、フォームの名前を入力します (図 D )。続行する前に、フォームの下部にあるフォームの (内部) 名 (IPM.Note.DateInSubject) をメモしておいてください。この名前は後で必要になります。[発行] をクリックして編集モードを閉じ、作業内容を保存するかどうかを確認するメッセージが表示されたら [はい] をクリックします。
図D

カスタムフォームを使用する
せっかくカスタム フォームを作成して作業を効率化したら、簡単に使えるだろうと思うかもしれませんが、少なくとも最初はそうではありません。この時点では、フォームを使用する唯一の方法は、難しい方法だけです。メール ウィンドウで、[ホーム] タブの [新規作成] グループで [新しいアイテム] をクリックし、ドロップダウンから [その他のアイテム] を選択します。次に、表示されるサブメニューで [フォームの選択] を選択します (図 E )。表示されるダイアログで、[ファイルの場所] ダイアログから適切なライブラリを選択します。この場合は、個人用フォーム ライブラリを選択します。DateinSubject (図 F ) を選択し、[開く] をクリックします。最後に、件名に日付が入ったメール ウィンドウが表示されます。明らかに、これは自分で日付を入力するよりもはるかに手間がかかります。ワンクリック フォームが必要です。
図E

図F

ワンクリックでカスタムフォームを追加できるという朗報です。フォームを開くマクロを作成し、そのマクロをリボンに追加してください。そのためには、Alt+F11 キーを押して Visual Basic エディター (VBE) を開き、リスト A のプロシージャを ThisOutlookSession モジュールに入力します。この Web ページからコードをコピーしないでください。手動で入力するか、デモ用の ThisOutlookSession.cls モジュールをインポートしてください。モジュールを保存して閉じ、Outlook に戻ります。
リストA
パブリックサブ OpenDateEmailForm
Outlook.Items としてアイテムを暗くする
アイテムをオブジェクトとして暗くする
Items を Application.ActiveExplorer.CurrentFolder.Items に設定します。
項目をItems.Add(“IPM.Note.DateInSubject”)に設定します。
アイテム表示
終了サブ
おそらく、「ホーム」タブの「新規作成」グループにある「新規メール」オプションの横に「DateInSubject」オプションを配置する必要があるでしょう。私ならそこに配置します。その場合は、以下の手順に従ってください。
- 「ファイル」タブをクリックし、「オプション」を選択します。左側のペインで「リボンのカスタマイズ」を選択します。
- ドロップダウンからコマンドを選択で、マクロを選択します。
- 左側のリストで OpenDateInSubject を選択します。
- 右側で、[ホーム] の下の [新規] をクリックし、[新しいグループ] をクリックします。
- 「名前の変更」をクリックし (新しいグループを選択した状態で)、「名前の変更」ダイアログの「表示名」コントロールに名前を入力して、グループの名前を「New Item Date」に変更します (図 G )。
- [OK]をクリックします。
- [新しいアイテムの日付 (カスタム)] を選択したまま、左側のリストで OpenDateInSubject マクロを選択し、[追加] をクリックします (図 H )。
- マクロを右クリックし、「名前の変更」を選択します。表示されるダイアログで「新しいアイテムの日付」と入力し、「OK」をクリックします。この手順を省略すると、Outlookはマクロ名全体を表示します。
- [OK] をクリックして Outlook に戻ると、新しいグループ [新しいアイテムの日付] (図 I ) が表示されます。
図G

図H

図I

フォームを開くには、「新規アイテムの日付」グループの「新規アイテムの日付」をクリックします。これで完了です!(マクロを有効にするように求められた場合は、有効にしてください。)リボンからデフォルトの「新規メール」グループを削除することはできませんが、作成したカスタムグループを既存の「新規」グループの前に配置することは可能です。
Microsoft Officeに関するご質問をお送りください
読者の質問には可能な限りお答えしますが、必ずお答えできるとは限りません。リクエストがない限り、ファイルは送信しないでください。添付ファイル付きの初回サポートリクエストは未読のまま削除されます。ご質問を明確にするために、データのスクリーンショットを送信していただくことも可能です。お問い合わせの際は、できるだけ具体的にご記入ください。例えば、「ワークブックのトラブルシューティングを行い、問題点を修正してください」といった質問では返答がないかもしれませんが、「この数式が期待どおりの結果を返さない理由を教えていただけますか?」といった質問であれば、回答が得られるかもしれません。ご使用のアプリとバージョンを明記してください。読者サポートにあたり、TechRepublicから時間や専門知識の報酬を受け取ることはありません。また、サポートした読者から料金を請求することもありません。お問い合わせは[email protected]までお願いいたします。