Google Sheets - получение отзывов от динамической боковой панели
Я создал боковую панель в Google Sheets, которая заполняется элементами из самого Sheet. Это необходимо сделать, потому что некоторые из этих значений будут меняться довольно часто - поэтому он не использует HTML.
Код для его важной части ниже:
//build the sidebar
var UIInstance=UiApp.createApplication()
.setTitle('Please choose Plant below:')
.setWidth(250);
//get the values over
var MaxRow=250;
var LookIn=0;
var GoHere="http://www.google.co.uk";
var L1; var L2; var L3;
for(LookIn=1;LookIn<MaxRow;LookIn++)
{
L1=sheet.getRange("AB" + LookIn);
L2=sheet.getRange("AC" + LookIn);
L3=sheet.getRange("AD" + LookIn);
if(L1.getValues()!="")
{
UIInstance.add(UIInstance.createLabel("_"));
UIInstance.add(UIInstance.createHTML("<b>" + L1.getValues() + "</b>"));
}
if(L2.getValues()!="")
{
UIInstance.add(UIInstance.createLabel(' - - + ' + L2.getValues()));
}
if(L3.getValues()!="")
{
UIInstance.add(UIInstance.createHTML(" - - - - - + <a href=''www.google.co.uk''>" + L3.getValues() + "</a>",false));
}
}
//add the sidebar
SpreadsheetApp.getUi()
.showSidebar(UIInstance);
Я хотел бы, чтобы каждый раз, когда кто-то щелкает одно из значений (в идеале одно из значений L3), он вставляет это значение в текущую ячейку. К сожалению, у меня проблемы с получением чего-либо, что делает это работающим (в настоящее время там просто есть ссылка на Google, но даже она не отображается).
У кого-нибудь есть какие-либо идеи? Опять же, боковая панель должна создаваться динамически (что она уже есть).
1 ответ
Управляется это с помощью переключателей. Единственной проблемой сейчас является получение параметров.
//build the sidebar
var UIInstance=UiApp.createApplication()
.setTitle('Please choose Plant below:')
.setWidth(250);
//get the values over
var MaxRow=250;
var LookIn=0;
var L1; var L2; var L3;
for(LookIn=1;LookIn<MaxRow;LookIn++)
{
L1=sheet.getRange("AB" + LookIn);
L2=sheet.getRange("AC" + LookIn);
L3=sheet.getRange("AD" + LookIn);
if(L1.getValues()!=""){UIInstance.add(UIInstance.createLabel("_")); UIInstance.add(UIInstance.createHTML("<b>" + L1.getValues() + "</b>"));}
if(L2.getValues()!=""){UIInstance.add(UIInstance.createHTML("<b> > > " + L2.getValues() + "</b>"));}
if(L3.getValues()!="")
{
var RadioHandler=UIInstance.createServerChangeHandler('radioButtonsChange');
UIInstance.add(UIInstance.createRadioButton("MyButton").setId(L3.getValues).setText(L3.getValues()).addClickHandler(RadioHandler));
UIInstance.add(UIInstance.createLabel(""));
}
}
//add the sidebar
SpreadsheetApp.getUi()
.showSidebar(UIInstance);
}