0

JavaScript と Office API 全般については初めてです。足を濡らすだけです。学ぶことはたくさんあります。「名前」や「アドレス」など、load() 関数呼び出しに渡されるさまざまな文字列定数が表示されます。これらは何であり、どのようにしてそれらを見つけるのですか? そのためのインテリセンスはありません。

例えば

getRange.load('address')

また

table.load("name")

ティア、ザック・バレス

4

1 に答える 1

1

「load」メソッドを呼び出す理由は、ctx.sync() の後にアクセスするつもりだからですよね。たとえば、現在の選択範囲のアドレスを出力したいコードがあるとします:

Excel.run(function(ctx) {
    var range = ctx.workbook.getSelectedRange();

    // <do some load on the range>

    return ctx.sync().then(function() {
        console.log(range.address);
    })
}).catch(function(e) {
    console.log(e);
})

自分でやっていることrange.addressがわかる (そして IntelliSense で列挙されていることがわかる) ため、それが、読み込むべきプロパティ名であることがわかっていることを意味します。実際、忘れると、アクセスしようとするとエラーが発生し、プロパティがまだ読み込まれていないことが通知されます。

唯一の注意点はコレクションに関するものです。tables.load("name") を実行すると、実際には、テーブル コレクションに「すべての子オブジェクトを読み込み、名前をプリフェッチする」ように指示していることになります。そのため、テーブル オブジェクトから直接 IntelliSense を探すのではなく、子プロパティ (つまり、tables.items[0].___) にアクセスする方法を探す必要があります。

お役に立てれば、

~ MSFT、Office Extensibility チームの開発者、Michael Zlatkovsky

于 2015-11-20T00:07:21.000 に答える