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. AppSheet

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

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

  2. Office関連

    OneNote + Google Apps Scriptで定期的にWebサイトのキャプチャーを撮る方…

    「“OneNote”がアップデート、URLをメールで送るだけでスクリー…

  3. Office関連

    CDOを使ってGmail送信を行うVBAマクロ

    「VBA Gmail 送信」といったキーワード検索で、「Gmail A…

  4. Microsoft Graph

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

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

  5. Office関連

    Outlookを使ってGmail送信を行うVBAマクロ

    下記G Suite アップデート ブログにある通り、今年の6月には“安…

  6. Google関連

    【2018年9月版】Google API ConsoleでクライアントIDとクライアントシークレット…

    GoogleのAPIを呼び出すにあたり、クライアントIDとクライアント…

コメント

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP