手動で(またはoffice.jsコードを使用して)コンテンツコントロール内にあるテーブルに行を挿入すると、contentControls内のコンテンツコントロールの数が増えますコレクション。 Word 2016 Windowsバージョン1611.Office.js - コンテンツコントロールにテーブル行を挿入するとエラーが発生する
たとえば、1つのコンテンツコントロールに1つのテーブルがある場合、最初はcontentControls.items.length = 1です.3行を挿入すると、contentControls.items.length = 4となります。
Word.run(function (context) {
var contentCntrls = context.document.contentControls;
context.load(contentCntrls, "tag");
return context.sync().then(function() {
app.showNotification("contentCntrls.items.length: " + contentCntrls.items.length, "");
});
})
これにより、後でcontentControlsコレクションを使用してWordがフリーズ/クラッシュするコードでエラー(内部エラー)が発生します。
この現象は、ベータ版とバージョン1の両方のoffice.jsコードで発生します。 この問題はWindowsでは発生しますが、Macでは正常に動作します。
私はVBAを経由して、それをチェックすると、コンテンツコントロールの数は変更されません。ユーザーは(行を挿入した後に)変更を保存した場合のDebug.Print ActiveDocument.ContentControls.Count
、その後、問題は発生しません。
これはバグですか、何か間違っていますか?いくつかの回避策がありますか(おそらくCCコレクションをリセットするため)?
要約:Juanは、問題がOneDriveに保存するときにのみ発生すると判断しました。マイクロソフトでは、修正プログラム(おそらく6月に発行+で動作します)。回避策は、保存APIを使用してコンテンツコントロールコレクションをリセットすることです。 –