Office関連

[Excel Services ECMAScript]セルにデータを入力する。

埋め込んだExcelワークブックのセルにデータを入力するコードです。
複数のセルにまとめて入力することも可能です。

<script type="text/javascript" src="http://r.office.microsoft.com/r/rlidExcelWLJS?v=1&kip=1"></script>
<script type="text/javascript">
    var fileToken = "SD92A165759188B352!265/-7880906317294423214/";

    if (window.attachEvent) {
        window.attachEvent("onload", loadEwaOnPageLoad);
    } else {
        window.addEventListener("DOMContentLoaded", loadEwaOnPageLoad, false);
    }

    function loadEwaOnPageLoad() {
        var props = {
            uiOptions: {
                showGridlines: false,
                showRowColumnHeaders: false,
                selectedCell: "'Sheet1'!A1"
            },
            interactivityOptions: { }
        };

        Ewa.EwaControl.loadEwaAsync(fileToken, "myExcelDiv", props, onEwaLoaded);
    }

    function onEwaLoaded(result) {
        ewa = Ewa.EwaControl.getInstances().getItem(0);
    }
    
    function fnc1() {
        ewa.getActiveWorkbook().getActiveCell().getValuesAsync(0,getRangeValues,null);
    }
    
    function getRangeValues(asyncResult) {
        if (asyncResult.getCode() == 0) {
            alert(asyncResult.getReturnValue()[0][0]);
        } else {
            alert("Err:" + asyncResult.getDescription());
        }
    }
    
    function fnc2() {
        var ary = new Array();
        ary[0] = new Array();
        ary[0][0] = "1234567";
        ewa.getActiveWorkbook().getActiveCell().setValuesAsync(ary,setRangeValue,null);
    }
    
    function setRangeValue(asyncResult) {
        if (asyncResult.getCode() != 0) {
            alert("Err:" + asyncResult.getDescription());
        }
    }
    
    function fnc3() {
        var ary = new Array();
        ary[0] = new Array();
        ary[1] = new Array();
        ary[0][0] = "abc";
        ary[0][1] = "def";
        ary[0][2] = "ghi";
        ary[1][0] = "jkl";
        ary[1][1] = "mno";
        ary[1][2] = "pqr";
        ewa.getActiveWorkbook().getActiveSelection().setValuesAsync(ary,setRangeValues,null);
    }
    
    function setRangeValues(asyncResult) {
        if (asyncResult.getCode() != 0) {
            alert("Err:" + asyncResult.getDescription());
        }
    }
</script>
<input type="button" value="値取得" onclick="fnc1();"></input><br>
<input type="button" value="値入力" title="1セルのみ選択して実行" onclick="fnc2();"></input><br>
<input type="button" value="値入力(複数セル)" title="2x3のセル範囲を選択して実行" onclick="fnc3();"></input>
<div id="myExcelDiv" style="width: 400px; height: 150px"></div>





・Ewa.Range.getValuesAsync(format, callback, userContext)
http://msdn.microsoft.com/en-us/library/ee589012.aspx
・Ewa.Range.setValuesAsync(values, callback, userContext)
http://msdn.microsoft.com/en-us/library/ee588957.aspx
・Ewa.Workbook.getActiveSelection()
http://msdn.microsoft.com/en-us/library/ee660082.aspx

[Excel Services ECMAScript]アクティブセルが変更されたときのイベントを利用する。前のページ

[Excel Services ECMAScript]タイマーでグラフを描画する。次のページ

関連記事

  1. Office関連

    Office文書をパスワード付きPDFに変換するVBAマクロ

    4年ほど前に書いた、下記記事のマクロがWordでも使えるか?との質問を…

  2. Office関連

    [雑感]Office 365 Soloに向く人、向かない人

    ここ一週間ほどOffice 365 Soloを触ってみて、ある程度のこ…

  3. Excel

    esp@cenetが公開しているPDF公報をダウンロードするVBAマクロ

    esp@cenet(Espacenet)が公開しているRESTfulな…

  4. Microsoft Teams

    Microsoft Teamsでタブの構築を試してみました。

    下記記事の通り、Office 365に新たなコラボレーションツール「M…

  5. Office アドイン

    [Office用アプリ]第三回 Apps for Office 勉強会で登壇しました。

    10月4日(土)に開催されたOffice 用アプリの勉強会「第3回 A…

  6. Office アドイン

    [Officeアドイン]Excel Custom functionsのデバッグ方法

    前回の記事でExcelの新たな機能「Custom functions」…

コメント

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP