Google関連

[Google Apps Script]スプレッドシート上にウィンドウを表示する

  • Google Apps Scriptでスプレッドシート上にウィンドウを表示します。
  • ウィンドウの内容はcreateHtmlOutputFromFileメソッドでHTMLファイルから読み込むことができます。
  • setValueメソッドでセルに値を入力することができます。
var app = SpreadsheetApp;

function onOpen(e){
    showContentApp();
}

function showContentApp(){
    var html = HtmlService.createHtmlOutputFromFile('Contents').setTitle('Sample App').setWidth(300).setHeight(250);
    app.getActiveSpreadsheet().show(html);
}

function setRangeValue(arg){
    app.getActiveRange().setValue(arg);
}

・Contents.html

<link rel="stylesheet" href="https://ssl.gstatic.com/docs/script/css/add-ons.css">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>
    $(function(){
        $('#btnOK').click(function(){
            google.script.run.setRangeValue('Hello world.');
        });
    });
</script>
<p><button id="btnOK" class="action">OK</button></p>

GoogleAppsScript_03_01

【編集後記】

先日からGoogle Apps Script(GAS)を触り始めました。
まだまだ分からないことだらけですが、とりあえずOffice 用アプリと同じようなことをGASでも出来るのではないかと思い、色々試しているところです。

今回の記事はOffice 用アプリでいうところの「コンテンツ アプリ」にあたります。
ウィンドウを表示するshowメソッドではUiInstanceオブジェクトも表示出来るみたいなのですが、いちいちボタンを追加したりラベルを追加したりというのが面倒だったので、Office 用アプリと同様HTMLから読み込む方法を採っています。
(コードの書き方がこれで合っているのか甚だ疑問ですが、とりあえず動くので良しとしています。)

関連記事

  1. Google関連

    [Google Apps Script]スライド画面いっぱいの大きさで動画を挿入する

    久しぶりのGoogle Apps Scriptネタです。今回はスラ…

  2. Google関連

    [Google Apps Script]jQuery UIのDatepickerを使ってスプレッドシ…

    「この記事のようにjQuery UIのDatepickerを使ってスプ…

  3. Google関連

    [Google Apps Script]スプレッドシートをExcelファイル(xlsx)に変換する

    スプレッドシートのファイルメニュー → 形式を指定してダウンロード →…

  4. Office関連

    Google スライドで新規プレゼンテーションを作成するVBAマクロ

    ここ数日PowerPointのマクロに加え、Google Apps S…

  5. Google関連

    [Google Apps Script]郵便番号から住所を取得する自作関数と住所から地図画像のURL…

    郵便番号検索APIを使って郵便番号から住所を取得する自作関数と、Sta…

  6. Office関連

    Google Docs APIを使ってGoogle ドキュメントを操作するVBAマクロ

    前回の記事で新しく追加されたGoogle Docs APIを紹介しまし…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP