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から読み込む方法を採っています。
(コードの書き方がこれで合っているのか甚だ疑問ですが、とりあえず動くので良しとしています。)

[Google Apps Script]サイドバーを表示する前のページ

[Google Apps Script]スプレッドシート上にウィンドウを表示する(2)次のページ

関連記事

  1. Google関連

    スプレッドシートをWeb APIにできるサービスを使ってみた

    ※ 本記事は@kuwazzyさんの記事に続く「Web API Adve…

  2. AppSheet

    AppSheetとGoogle Apps Scriptとの連携機能を試してみました。

    当ブログでも2年ほど前に取り上げたことがある(下記記事ご参照)「App…

  3. Microsoft Graph

    [Google Apps Script]Office 365 unified APIを使ってメールを…

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

  4. Google関連

    [Google Apps Script]サイドバーを表示する

    Google Apps Scriptでサイドバーを表示します。…

  5. Excel

    Gmail APIを使ってメール送信するVBAマクロ(2)

    前回の記事でGmail APIを使ってメールを送信するVBAマクロを紹…

  6. Google関連

    Google Forms APIが正式リリースされたのでさっそく試してみました。

    アンケート等で使用する機会が多いGoogleフォームを、API経由で作…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP