Office アドイン

[Office用アプリ]ユーザー設定を保存する。

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

Office用アプリではユーザー設定(何らかのプロパティや設定情報等)を保存することができます(Wordの文書変数のようなもの)。
今回はその利用方法を簡単に紹介します。

<!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>
            var n;
            var v;
            Office.initialize = function (reason) {
                $(document).ready(function () {
                    n = "userName";
                    v = "マイクロ舞子";
                });
            }
            $(function(){
                $("#btnSet").click(
                    function() {
                        Office.context.document.settings.set(n, v);
                        write("ユーザー設定(" + n + ")をセットしました。:" + v);
                    }
                );
                $("#btnGet").click(
                    function() {
                        write("こんにちは!" + Office.context.document.settings.get(n) + "さん");
                    }
                );
                $("#btnSave").click(
                    function() {
                        Office.context.document.settings.saveAsync(function (asyncResult) {
                            if (asyncResult.status == "succeeded") {
                                write("設定を保存しました。");
                            }
                        });
                    }
                );
                $("#btnRemove").click(
                    function() {
                        Office.context.document.settings.remove(n);
                        write("ユーザー設定(" + n + ")を削除しました。:" + v);
                    }
                );
            });
            function write(message) {
                $("#result").val(message);
            }
        </script>
        <style>
            body {
                margin:0;
                padding:0;
                font-family:Arial,sans-serif;
                font-size:0.9em;
            }
        </style>
    </head>
    <body>
        <input id="btnSet" type="button" value="Set">
        <input id="btnGet" type="button" value="Get">
        <input id="btnSave" type="button" value="Save">
        <input id="btnRemove" type="button" value="Remove">
        <textarea id="result" rows="4" cols="30"></textarea>
    </body>
</html>

上記コードの通り、Settingsオブジェクトの「set」メソッドでユーザー設定をセット、「get」メソッドでユーザー設定の呼出し、「remove」メソッドでユーザー設定の削除を行います。
そして忘れてはいけないのが設定の保存。
ユーザー設定をセットした後は「saveAsync」メソッドで保存しておかないと、文書を閉じたときに設定が消えてしまいます。
また、このユーザー設定はOffice用アプリを挿入した文書に保存されますので、「saveAsync」メソッドで設定を保存した後は忘れずに”文書の保存“(上書き保存・名前を付けて保存)を行いましょう。

ちなみに、ユーザー設定を保存した文書をZip解凍すると、保存した設定が「\userSettings\xl\webextensions」にある「webextension*.xml」(*は番号)ファイル内の「property」要素として保存されていることが確認できます。

[Office用アプリ]「あいさつ文の挿入」を作業ウィンドウアプリに移植してみる。前のページ

jQuery UIのDatepickerに祝日判定ロジックを組み込む。次のページ

関連記事

  1. Office関連

    「EXCEL VBA 業務自動化 仕事の効率を劇的に上げるノウハウ」レビュー

    ※ 下記レビューはあくまでも個人的な感想です。2015年4…

  2. Office関連

    [Excel Services ECMAScript]アクティブセルが変更されたときのイベントを利用…

    埋め込んだExcelワークブックの、アクティブセルが変更されたときのイ…

  3. Office関連

    Office製品のフィードバック先まとめ

    WordやExcel等のOffice製品を使っていて、「UIのこの日本…

  4. Office関連

    [Office]シンプルリボンのアンケートへの回答でAmazonギフト券が当たるチャンス

    「Office の新しい外観」にある通り、一部のOffice環境では、…

  5. Excel

    Office クリップボードをマクロで操作する(MSAA)

    MSDNフォーラムに質問がありましたが、Office クリップボードを…

  6. Office関連

    文書が互換モードかどうかを判定するWordマクロ

    古いバージョンのWordで作成された文書を開くと、タイトル バーに「互…

コメント

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

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP