WSH/JScript で Wordを操作する

某所で使いたいので調べた.

参考文献: バッチで,Word文書の内容を読み取ろう (WSH/JScriptでWordファイルを操作する方法) - 主に言語とシステム開発に関して

編集履歴をオンにしている文章では,デフォルトで「全ての編集履歴を表示する」の状態で開かれてしまう.悲しいことにこの下線や取り消し線の付いた部分もパースされてしまう.

ごにょごにょ本家を探る.
RevisionsFilter プロパティ (Word) | Microsoft Docs
View.ShowRevisionsAndComments property (Word) | Microsoft Docs
View.ShowInsertionsAndDeletions property (Word) | Microsoft Docs
下2つの発見には手間取ってViewオブジェクトのプロパティをあれこれ試した.

Excel VBA と違って Enumeration が使えない(私がやり方わからないだけ?)ので数字の直接代入は意味が分かりにくくてよろしくない.

本日の成果

var doc_file_path = "C:\\Users\\hoge\\Documents\\fuga\\piyo\\hamu.doc";

// Wordを起動する
var word = WScript.CreateObject("Word.Application");
word.Visible = true;

// 指定したWordファイルを開く
var doc = word.Documents.Open( doc_file_path );

// 編集履歴を非表示にする
doc.ActiveWindow.View.RevisionsFilter.View = 0;
doc.ActiveWindow.View.ShowRevisionsAndComments = 0;
doc.ActiveWindow.View.ShowInsertionsAndDeletions = 0;
// doc.ActiveWindow.View.Zoom.Percentage = 400;

// ファイルを閉じる
// doc.Close();

// ワードを終了する
// word.Quit();