нужна помощь, я пытаюсь прочитать ячейку в этой функции. Я пробовал 20 разных типов вещей,
у меня всегда есть это сообщение об ошибке, когда я запускаю focntion на моей электронной таблице:
Детали сообщения:
Невозможно преобразовать function getData() { Sheet = SS.getSheetByName("Technic"); Range = Sheet.getRange(4, 2); Data = Range.getValue(); }
в (class)
.
Что не так?
function hideMyColumns()
{
var ss = SpreadsheetApp.getActive();
var sh = ss.getActiveSheet();
var vl = sh.getRange('A30').getValue();
var cols1 = [ function getData() {
Sheet = SS.getSheetByName('Technic');
Range = Sheet.getRange(4, 2);
Data = Range.getValue() }];
var cols2 = [4, 5, 7, 8, 10, 11,]
switch (vl)
{
case 1:
for (var i = 0; i < cols1.length; i++)
{
sh.hideColumns(cols1[i]);
}
break;
case 2:
for (var i = 0; i < cols2.length; i++)
{
sh.hideColumns(cols2[i]);
}
}
}
эволюция ситуации:
Хорошо, теперь функция выглядит следующим образом:
function hideMyColumns()
{
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
var vl=sh.getRange('A30').getValue();
var cols1=[ function() {
Sheet = ss.getSheetByName('Technic');
Range = Sheet.getRange(2,4);
Data = Range.getValue();
return Data;
}()];
var cols2=[4,5,7,8,10,11,12,]
switch(vl)
{
case 1:
for(var i=0;i<cols1.length;i++)
{
sh.hideColumns(cols1[i]);
}
break;
case 2:
for(var i=0;i<cols2.length;i++)
{
sh.hideColumns(cols2[i]);
}
}
}
контекст:
В таблице есть 2 листа: «Основной» и «Техника»
"Main" может скрывать некоторые столбцы с помощью этой функции.
На листе «Техника» вы найдете ячейку, которая содержит формулу, которая возвращает: «2,3,4 ...»
я пытаюсь использовать эту формулу как переменную в функции "hideMyColumns".
Под этим у меня есть еще одна более простая функция: конечно, unhideCols (). (хорошо работает!)