2

Google ドライブでスプレッドシートを作成し、Google プレゼンテーションを使用してチュートリアル プレゼンテーションを作成し、スプレッドシートの使用方法と、以前の方法よりも優れている理由をユーザーに示しました。

私が望むのは、スプレッドシートを開いたときに、その人がチュートリアルのプレゼンテーションをまだ見たかどうかを尋ねるメッセージ ボックスが表示されることです。ユーザーが [いいえ] をクリックした場合、ブラウザーで新しいページを開いて公開したプレゼンテーションを表示するか、カスタム UI でプレゼンテーションを表示します。

何時間も検索しましたが、わかりません。これは可能ですか?ご協力ありがとうございました!

私はフォーラムを初めて使用するので、これを間違って投稿した場合はお知らせください。ありがとう!

4

2 に答える 2

2

このようなものはかなりうまくいきます。

「ルック アンド フィール」を他のボタンと一致させるために偽のボタンを使用し、その上に非表示のリンクを追加しただけです ;-)

function alertLink() {
  var doc = SpreadsheetApp.getActiveSpreadsheet();
  var app = UiApp.createApplication().setTitle('Message').setHeight('100').setWidth('400');
  var panel = app.createVerticalPanel().add(app.createHTML('Did you see my beautiful <b>Tutorial</b> ?'));
  var grid = app.createGrid(1,2).setWidth('400');
  var closeHandler = app.createServerHandler('close');
  var b1 = app.createButton("NO and I'd like to").setTitle('go to the tutorial in a new tab');
  var b2 = app.createButton("YES and I don't want to see it again",closeHandler).setTitle('close this window');
  var link = app.createAnchor('XXXXXXXXXX','http://www.google.com').setStyleAttributes({'zIndex':'1' , 'position':'fixed' , 'top':'25' , 'left':'20', 'color':'transparent' }).setTitle('go to the tutorial in a new tab');
  var G1 = app.createVerticalPanel().add(b1).add(link);
  grid.setWidget(0,0,G1).setWidget(0,1,b2);
  app.add(panel).add(grid)
  doc.show(app)
}

function close(){
  return UiApp.getActiveApplication().close();
}

onOpenスプレッドシートを開いたときに自動的に実行する場合は、トリガーを使用してください。(またはメイン関数の名前を に変更onOpen())

これがどのように見えるかです:

ここに画像の説明を入力

于 2013-08-09T17:33:00.103 に答える