我想(在電子表格中的彈出式窗口中的UI)使用此谷歌Apps腳本我的谷歌電子表格中添加自動完成功能建議從羅曼Vialard盒庫和詹姆斯·費雷拉的書(修改):如何解決此授權Google Apps腳本提示盒庫問題?
function onEdit() {
var s = SpreadsheetApp.getActiveSheet();
if(s.getName() == "my_sheet") { //checks that we're on the correct sheet
var r = s.getActiveCell();
if(r.getColumn() == 1) {
var names = ["Adam", "Peter", "Benjamin", "Ceaser", "Prometheus", "Gandi", "Gotama", "Mickey Mouse"];
var app = UiApp.createApplication();
var suggestBox = SuggestBoxCreator.createSuggestBox(app, 'contactPicker', 200, names);
app.add(suggestBox);
SpreadsheetApp.getActive().show(app);
var dataCell0 = r.offset(0, 1);
var dataCell0 = r.offset(0, 1);
if(dataCell0.getValue() == '')
otherTestTunction();
}
}
}
但是當我開始「my_sheet」的編輯列,而出現的界面中,這autorization的錯誤發生(在我的語言,它說:「你必須有權限執行此操作」):
該文件說,onEdit()觸發「他們無法訪問任何需要以該用戶身份進行身份驗證的服務。例如,Google翻譯服務是匿名的,可以通過簡單的觸發器訪問。谷歌日曆,Gmail和站點是不是匿名的,簡單的觸發器不能訪問這些服務。」
因爲我沒有使用ContactsApp
,我假設暗示盒庫要求授權。
我怎麼設置?最多可安裝在編輯觸發器,將要求進行授權(你能不能給我一些示例代碼?)
嗨,@Serge,我試圖理解我可以使用自動完成(我會稍後添加處理程序)。我想達到這個目標:當我開始輸入名稱時,Ui自動填充應用程序會佔據整個名稱,當我選擇它時,腳本不僅會給我提供該名稱,還會給出該人員的其他信息(每個人都有一個數組與它的數據,我從另一個電子表格中獲得這些數據)。 – craftApprentice
好吧,我明白了..我會試一下,讓我知道如果我找到...以後再回來:-) –
你想在單元格或uiapp對話框中「開始輸入名稱」的位置?如果您希望單元格上的唯一方法是使用定義動態驗證下拉列表的查詢公式。如果這就是你想讓我知道和生病發布的東西。 –