LoginSignup
0
0

More than 1 year has passed since last update.

MacのWordで、⌘Pで変更・コメントを含まない文書を印刷する(Ventura対応版)

Last updated at Posted at 2023-05-08

Microsoft Word for Macの「校閲」機能で変更履歴機能やコメント機能を使っている場合、表示が「変更履歴/コメントなし」以外だと、デフォルトの印刷対象が「変更とコメントの内容を含む文書」になります。image.png
私は依然、プリントダイアログを開いて印刷対象を「文書」にするという一連の操作をAppleScriptで自動化するサービスに⌘Pを割り当てる方法で、一発で文書本体の印刷を行えるようにしました。
MacのWordで、⌘Pで変更・コメントを含まない文書を印刷する - Qiita
ただ、このスクリプトはmacOS 13 Venturaではプリントダイアログの形式が変わってしまい、うまく動作しません。なんかWord用の設定部分をうまいこと展開できないのです。
PrintDialogOnVentura.png
で、前回のサービスを作っていて最後に気づいたのが、編集画面で変更履歴・コメントを表示していなければ印刷対象も「文書」になる、ということ。
そんで、変更履歴・コメントの表示・非表示は、メニューバーの「表示>コメントと注釈」のON/OFFで切り替えられます。
CommandsOnMenuBar.png
てことは、印刷開始時にメニューバーの「コメントと注釈」をOFFにして、もし元々これがONだったならプリントダイアログが閉じた時に再度ONにすれば良さそうです。
たとえばこんな感じのスクリプトで。

(* Wordで印刷する際、デフォルトの印刷対象は編集画面での変更履歴等表示状況に依存するので、変更履歴等を非表示にしてからプリントダイアログを開く *)
set isShowing to false

tell application "Microsoft Word"
	activate
end tell

tell application "System Events"
	tell process "Microsoft Word"
		tell menu item "コメントと注釈" of menu 1 of menu bar item "表示" of menu bar 1
			if value of attribute "AXMenuItemMarkChar" is "✓" then (* コメント表示中なら *)
				set isShowing to true
				pick (* "コメントと注釈"を選択し、コメントを非表示にする。 *)
			end if
		end tell
		
		(* プリントダイアログを表示 *)
		pick menu item "プリント..." of menu "ファイル" of menu bar item "ファイル" of menu bar 1
		
		(* もし元々コメント表示してたら、プリントダイアログを閉じた時にコメント表示に戻す *)
		if isShowing then
			repeat while (exists window "プリント")
				delay 1
			end repeat
			pick menu item "コメントと注釈" of menu 1 of menu bar item "表示" of menu bar 1
		end if
		
	end tell
end tell

余談ですが、どうもON/OFFのあるメニュー項目の現在のステータスは、menu itempropertyでは取得できないらしく、value of attribute "AXMenuItemMarkChar" of menu itemの値が"✓"か否かで判定する力技を使うようです。
(参考:https://stackoverflow.com/questions/69030/in-applescript-how-can-i-find-out-if-a-menu-item-is-selected-focused )
で、このスクリプトを内容とする「サービス」をAutomatorで作ります。
AutomatorService.png
あとはこの「サービス」のキーボードショートカットを⌘Pに、Word標準の「プリント...」のキーボードショートカットを適当に⌥⌘Pあたりに設定すればOKです。ちなみにMontrey以前ではどちらも「システム設定>キーボード>ショートカット>アプリケーション」から設定していたのですが、Venturaでは「サービス」へのキーボードショートカットは、「システム設定>キーボード>キーボードショートカット>サービス>一般」からに変わったようです。(Word標準の「プリント...」は従来通り)
SettingServiceShortcutOnVentura.png
なお、実際に動作させるには「システム設定>プライバシーとセキュリティ>アクセシビリティ」でMicrosoft Wordに「コンピュータの制御を許可」する必要があるのは従来通り。
ということで。プリントダイアログが閉じるまでServiceが無限ループして待つというちょっとした強引さはあるものの、プリントダイアログを開いてからぽちぽちクリックするよりもスマートな方法で、文書のみの印刷が可能になりました。たぶん古いバージョンのmacOSでも動くと思います。Enjoy!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0