JScriptでVisioのプロパティを変更する
しつこい。……といいつつ、実はVisioだけAPIの体系が全然違ったりするんだよなぁ。さすがは元々他社製品だっただけのことはある。Excelなどは○○.ApplicationでCreateObjectすると非表示状態で立ち上がるのだが、Visioは表示状態になるので、Visio.InvisibleAppでCreateObjectする必要がある。
/* * MS-VISIOのプロパティを設定する * properties: プロパティのDictionary */ function visio_setting(filename, properties) { var visio = WScript.CreateObject("Visio.InvisibleApp"); var document = visio.Documents.Open(filename); // プロパティの設定 for (var key in properties) { if (key == "Title") document.Title = properties[key]; else if (key == "Title") document.Title = properties[key]; else if (key == "Subject") document.Subject = properties[key]; else if (key == "Creator") document.Creator = properties[key]; else if (key == "Manager") document.Manager = properties[key]; else if (key == "Company") document.Company = properties[key]; else if (key == "Category") document.Category = properties[key]; else if (key == "Keywords") document.Keywords = properties[key]; else if (key == "Description") document.Description = properties[key]; } document.Save(); document.Close(); visio.Quit(); }