Outlook でカテゴリに基づいてタスクを印刷するには、どうすればよいでしょうか?
Outlook のタスクにはさまざまなカラーカテゴリーが設定されており、現在、カテゴリごとに別々のページでタスク一覧を印刷したいと考えています。この操作をOutlook でどのように行えばよいでしょうか?
カテゴリごとに異なるページでタスクを手動で1 つずつ印刷する
VBA コードを使用してカテゴリごとに異なるページでタスクを印刷する
カテゴリごとに異なるページでタスクを手動で1 つずつ印刷する
Outlook では、異なるカテゴリに基づいてタスクを1 つずつ手動で別々のページに印刷できます。以下の手順に従ってください。
1.Outlook を起動し、タスクペインで印刷したいタスクフォルダーを選択したら、Ctrl + Eキーを押して検索ボックスを有効にしてください。その後、検索タブのカテゴリ分けアイコンをクリックし、印刷したいカラーのカテゴリを1 つ選択してください(下記スクリーンショット参照)。

2.すると、指定したカラーのカテゴリが付いたすべてのタスクが一覧表示されます(下記スクリーンショット参照)。

3.次に、ファイル>印刷をクリックして、このタスク一覧を印刷してください(下記スクリーンショット参照)。

4.上記の手順を繰り返し、他のカラーカテゴリーを持つタスク一覧を1 つずつ手動で印刷してください。
VBA コードを使用してカテゴリごとに異なるページでタスクを印刷する
ここでは、カテゴリごとにタスクを分けて、それぞれ別のページで一度に印刷できる VBA コードをご紹介します。以下の手順に従って操作してください。
1.タスクペインに移動して、印刷したいタスクフォルダーを選択します。
2.次に、ALT + F11キーを押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。
3.次に、挿入>モジュールをクリックし、開いた空のモジュールに以下のコードをコピー&ペーストしてください。
VBA コード:カテゴリごとに異なるページでタスクを印刷する
Sub PrintTaskList_SpecificColorCategory()
Dim xTaskItems As Outlook.Items
Dim xTask As Outlook.TaskItem
Dim xDictionary As Scripting.Dictionary
Dim xCategoryArr As Variant, xCategory As Variant
Dim xExcelApp As Excel.Application
Dim xExcelWorkbook As Excel.Workbook
Dim xExcelWorksheet As Excel.Worksheet
Dim xSheet As Excel.Worksheet
Dim xKey As Variant
Dim xKeyStr As String
Dim i As Long, xLastRow As Integer
On Error Resume Next
If Application.ActiveExplorer.CurrentFolder.DefaultItemType <> olTaskItem Then Exit Sub
Set xTaskItems = Application.ActiveExplorer.CurrentFolder.Items
Set xDictionary = New Scripting.Dictionary
For Each xTask In xTaskItems
xCategoryArr = Split(xTask.Categories, ",")
For Each xCategory In xCategoryArr
If xDictionary.Exists(Trim(xCategory)) = False Then
xDictionary.Add Trim(xCategory), 0
End If
Next
Next
If xDictionary.Count = 0 Then
MsgBox "The current Task doesn’t have any category", vbOKOnly + vbInformation, "Kutools for Outlook"
Exit Sub
End If
Set xExcelApp = New Excel.Application
Set xExcelWorkbook = xExcelApp.Workbooks.Add
xExcelApp.Visible = True
i = 0
If xDictionary.Count > xExcelWorkbook.Sheets.Count Then
xExcelWorkbook.Sheets.Add Count:=xDictionary.Count - xExcelWorkbook.Sheets.Count
End If
For Each xKey In xDictionary.Keys
xKeyStr = CStr(xKey)
i = i + 1
Set xExcelWorksheet = xExcelWorkbook.Sheets(i)
xExcelWorksheet.Name = xKeyStr
With xExcelWorksheet
.Range("A1") = xKeyStr
.Range("A1").Font.Bold = True
.Range("A1").Font.Size = 18
.Range("A1", "C1").HorizontalAlignment = xlCenter
.Range("A1", "C1").VerticalAlignment = xlCenter
.Range("A1", "C1").Merge
.Range("A2") = "Subject"
.Range("A2").Font.Bold = True
.Range("B2") = "Start Date"
.Range("B2").Font.Bold = True
.Range("C2") = "Due Date"
.Range("C2").Font.Bold = True
End With
For Each xTask In xTaskItems
If InStr(xTask.Categories, xKeyStr) > 0 Then
xLastRow = xExcelWorksheet.UsedRange.Rows.Count + 1
With xExcelWorksheet
.Range("A" & xLastRow) = xTask.Subject
.Range("B" & xLastRow) = xTask.StartDate
.Range("C" & xLastRow) = xTask.DueDate
End With
End If
Next
xExcelWorksheet.Columns("A:C").AutoFit
Next
For Each xSheet In xExcelWorkbook.Sheets
xSheet.PrintOut
Next
xExcelWorkbook.Close False
xExcelApp.Quit
End Sub
4.次に、ツール>参照設定をクリックします。Microsoft Visual Basic for Applicationsウィンドウ内に表示される参照設定 - Project1ダイアログボックスで、使用可能な参照設定リストボックスからMicrosoft Excel オブジェクトライブラリおよびMicrosoft Scripting Runtimeの各オプションにチェックを入れてください(下記スクリーンショット参照)。

5.次に、OKボタンをクリックしてからF5キーを押し、このコードを実行します。コードの実行が完了すると、異なるカテゴリのタスク一覧がそれぞれ別のページで印刷されます。
Outlook の AI メールアシスタント:ワンクリックで魔法のように、よりスマートな返信と明確なコミュニケーションを実現!
Kutools for Outlook の AI メールアシスタントで、日々のOutlook タスクをもっと効率的に。この強力なツールは過去のメールから学習し、的確で知的な返信を提案したり、メールの内容を最適化したり、メッセージの下書きや修正を簡単にサポートします。

この機能は以下のサポートを提供します:
- スマート返信:過去の会話に基づき、カスタマイズされ、正確で即使用可能な返信を取得できます。
- コンテンツ強化:メール本文を自動で明確かつ効果的な内容にブラッシュアップします。
- 簡単作成:キーワードを入力するだけで、AI が複数の書式スタイルで残りの作業を自動処理します。
- インテリジェント拡張:文脈を的確に捉えた提案であなたのアイデアをさらに広げます。
- 要約機能:長いメールを瞬時に簡潔な概要にまとめてくれます。
- グローバル対応:メールをあらゆる言語に簡単に翻訳できます。
この機能は以下のサポートを提供します:
- スマートメール返信
- 最適化されたコンテンツ
- キーワードベースの下書き
- インテリジェントなコンテンツ拡張
- メール要約
- 多言語翻訳
最高の Office 生産性ツール
まったく新しいKutools for Outlook を、100 以上の驚きの機能とともに体験しましょう!今すぐダウンロード!
🤖KUTOOLS AI:高度な AI 技術を活用して、メールの返信、要約、最適化、拡張、翻訳、作成など、あらゆる操作をラクラクこなします。
📧メール自動化:自動返信(POP および IMAP 対応)/メールのスケジュール送信/メール送信時にルールに基づいて自動 CC/BCC/自動転送(高度なルール)/自動で挨拶文を追加/複数の宛先を持つメールを個別のメッセージに自動分割...
📨メール管理:メールの取り消し/件名などを基準に詐欺メールをブロック/重複したメールを削除/高度な検索/フォルダーを整理...
📁添付ファイルプロ:一括保存/一括分離/一括圧縮/自動保存/自動的に切り離す/自動圧縮...
🌟インターフェースの魅力:😊さらに美しくクールな絵文字を多数収録/重要なメールが届いた際に通知/Outlook を閉じる代わりに最小化...
👍ワンクリックの驚き:全員に【Attachment】付きで返信/フィッシングメール対策/🕘送信者の現在時刻ゾーンを表示...
👩🏼🤝👩🏻連絡先とカレンダー:選択したメールから連絡先を追加を一括登録/連絡先グループを個別のグループに分割/誕生日のリマインダーを削除...
Kutools はお好みの言語でお使いいただけます!英語、スペイン語、ドイツ語、フランス語、中国語をはじめ、40 以上の言語をサポートしています!
ワンクリックでKutools for Outlook の機能を即解放!今すぐダウンロードして、効率を飛躍的にアップさせましょう!


🚀 ワンクリックダウンロード — Office アドインをすべて入手
強く推奨:Kutools for Office(5-in-1)
ワンクリックで5 つのインストーラーを 一括ダウンロード! ―Kutools for Excel、Outlook、Word、PowerPointおよびOffice Tab Pro。今すぐダウンロード!
- ✅ワンクリックで簡単操作:5 つのセットアップパッケージをたった1 回のクリックで一括ダウンロードできます。
- 🚀どんな Office 作業にも対応可能:必要なときに、必要なアドインをすぐインストールできます。
- 🧰含まれるもの:Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint