ここでは簡単な例を挙げておきます。これには検索ボタンとクリアボタンが含まれており、データを表示したいサマリーテーブルの行にあるセルを選択することが期待されます。サマリーテーブルの行を選択すると、検索ボタンがクリックされ、その場所と日付のプロジェクトページのデータがサイドバーに表示されます。データを消去する場合は、クリアボタンを押します。
Code.gs:
function searchForDataSideBar()
{
var ui=HtmlService.createHtmlOutputFromFile('searchinfordata');
SpreadsheetApp.getUi().showSidebar(ui);
}
function searchForData()
{
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('Summary');
var cell=sh.getActiveCell();
var row=cell.getRow();
var cols=sh.getLastColumn();
var rg=sh.getRange(row, 1, 1, cols);
var vA=rg.getValues();
var sh1=ss.getSheetByName(vA[0][0]);
var rg1=sh1.getDataRange();
var vA1=rg1.getValues();
var s='';
for(var i=1;i<vA1.length;i++)
{
var data=vA1[i];
var a=vA[0][1];
var b=data[0];
var c=vA[0][2].valueOf();
var d=data[1].valueOf();
if(a==b && c==d)
{
s+=Utilities.formatString('Project Name:%s<br />Location:%s<br />Date:%s<br />Data1:%s<br />Data2:%s</br>Data3:%s</br>Data4:%s</br>Data5:%s</br><hr>',vA[0][0],data[0],Utilities.formatDate(new Date(data[1]), Session.getScriptTimeZone(), "E MMM dd,yy"),data[2],data[3],data[4],data[5],data[6])
}
}
return s;
}
私は上のボタンを配置すると、あなたのデータを表示するサイドバーを使用していました。私のファイルの名前はsearchinfordata.htmlた:
<!DOCTYPE html>
<html>
<head>
<title>Searching for Data</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>
function search()
{
google.script.run
.withSuccessHandler(found)
.searchForData();
}
function found(hl)
{
document.getElementById('found').innerHTML=hl;
}
function clearDiv()
{
document.getElementById('found').innerHTML='';
}
console.log('MyCode');
</script>
</head>
<body>
<div id="instr">Please Select a cell on the row in the summary tab that you wish to see the data for.</div>
<input type="button" value="Search" onClick="search();" />
<input type="button" value="Clear" onClick="clearDiv();" />
<div id="found"></div>
</body>
</html>
そして、ここでは、あなたのメニューを構築したり、サイドバーを起動することができます開く時()関数です。
function onOpen()
{
SpreadsheetApp.getUi().createMenu('My Tools')
.addItem('Show Sidebar','searchForDataSideBar')
.addToUi();
searchForDataSideBar();//launches your sidebar whenever you open your spreadsheet.
}
これは、概要タブが次のようになります。

P1タブ:

P2タブ:

を
P3タブ:

し、最終的にサイドバー:

あなたは[クラスSpreadsheetApp]を掘りで始めることができます(https://developers.google.com/アプリスクリプト/リファレンス/スプレッドシート/スプレッドシートアプリ)。シート間を操作するには、[setActiveSheet(sheet)](https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet-app#setactivesheetsheet)を使用して別のシートを開くなどの方法を使用する方法を知っておく必要があります。 [スプレッドシート]ボタンについては、[SO post](https://stackoverflow.com/questions/28668766/adding-butt.ons-to-google-sheets-and-set-value-to-cells)を参照してください。クリックしない) – noogui