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 2013 アイコン一覧(R)

    ・Office 2013 アイコン一覧 NUM…

  2. Office アドイン

    [Office用アプリ]TechEd North America 2013のセッション資料

    アメリカ・ニューオリンズで現地時間6月3日から6日にかけて開催された開…

  3. Office関連

    [OneNote]クリップボードから新しいページに貼り付け

    何かをメモするとき、ファイルを保存するとき等々、私はよくOneNote…

  4. Office関連

    PDFを他のファイル形式に変換するVBAマクロ

    「PDF 変換 Word VBA」といったキーワード検索でのアクセスが…

  5. Office関連

    選択している行の高さを増やすExcelマクロ

    Excelの表を印刷しようとしたとき、ビミョーに文字が切れていてイラッ…

  6. Office関連

    SkyDriveの同期フォルダーのパスを取得するWordマクロ

    無料で使える便利なクラウドストレージ「SkyDrive」にはローカルフ…

コメント

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP