Office アドイン

[Office用アプリ]任意の場所にデータを入力する。

※ この情報はOffice 2013 カスタマー プレビュー版を元にしています。製品版では変更になる可能性がありますのでご注意ください。

今回はドキュメントの任意の場所にデータを入力する方法を紹介します。
事前準備として、Excelを開きSheet1の「$C$2:$E$4」の範囲を「rngSample」として名前定義しておきます。

そしてアプリのコードが下記になります。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=Edge">
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
        <script src="https://az88874.vo.msecnd.net/api/1.0/office.js"></script>
        <script>
            Office.initialize = function (reason) {
                $(document).ready(function () {
                    Office.context.document.bindings.addFromNamedItemAsync("Sheet1!rngSample", "matrix", {id:"myRange"}, function (result) {
                        if (result.status == "succeeded"){
                            write("バインドを追加しました。:" + result.value.id + " , Type:" + result.value.type);
                        } else {
                            write("エラーが発生しました。:" + result.error.message);
                        }
                    });
                });
            }
            $(function(){
                $("#myButton").click(
                    function() {
                        var ary = [
                            [1, 2, 3],
                            [4, 5, 6],
                            [7, 8, 9]
                        ];
                        Office.select("bindings#myRange").setDataAsync(ary, {coercionType:"matrix"}, function (result) {
                            if (result.status == "failed") {
                                write("エラーが発生しました。:" + result.error.message);
                            }
                        });
                    }
                );
            });
            function write(s) {
                $("#result").val(s);
            }
        </script>
    </head>
    <body>
        <input id="myButton" type="button" value="OK"><br>
        <textarea id="result" cols="35" rows="5"></textarea>
    </body>
</html>

上記コードを設定したアプリを挿入後「OK」ボタンをクリックすると、事前に定義しておいた「rngSample」の範囲にコード中の配列「ary」で指定したデータが入力されることが確認できます。

上記のようにBindingsオブジェクトのaddFromNamedItemAsyncメソッドや、addFromPromptAsyncメソッド、addFromSelectionAsyncメソッドでバインドを追加しておけば、BindingオブジェクトのsetDataAsyncメソッドでデータを入力することができます。

このあたりの動作は若干分かりづらいので、実際にコードを動かしてみると良いでしょう。

・Bindings.addFromNamedItemAsync method (apps for Office)
http://msdn.microsoft.com/en-us/library/fp123590%28v=office.15%29
・Bindings.addFromPromptAsync method (apps for Office)
http://msdn.microsoft.com/en-us/library/fp142150%28v=office.15%29
・Bindings.addFromSelectionAsync method (apps for Office)
http://msdn.microsoft.com/en-us/library/fp142282%28v=office.15%29
・Binding.setDataAsync method (apps for Office)
http://msdn.microsoft.com/en-us/library/fp161120%28v=office.15%29

Office 2013 カスタマープレビュー版の「Spy Utility」前のページ

[Office用アプリ]Microsoft Translator APIを利用して選択文字列を翻訳する。次のページ

関連記事

  1. Office関連

    Excel Services JavaScript APIを試してみました(2)

    前回の記事で、JavaScriptコードを貼り付けてExcelワークブ…

  2. Office アドイン

    作業ウィンドウのアプリをWord 2013にも対応させる。

    ※ この情報はOffice 2013 カスタマー プレビュー版を元にし…

  3. Office関連

    PowerPoint 2013でYouTubeの動画を挿入する。

    2014/5/23 追記:いつの間にか「ビデオの挿入ダイアログ」が…

  4. アイコン一覧

    Office 365アイコン(imageMso)一覧(B)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

  5. Office関連

    インストールされているアプリケーション一覧を取得するVBAマクロ

    端末にインストールされているアプリケーション名を調べる必要があったので…

コメント

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP