Использование функции If для нескольких ячеек - PullRequest
0 голосов
/ 05 января 2020

Привет У меня есть рабочая программа для перетаскивания данных с одного листа на другой лист и размещения в соответствующих ячейках, однако в одном столбце я хочу изменить результаты, которые читают «K» из исходного листа и пишут «A» "к целевому листу, используя функцию if, но мне кажется, что я могу сделать только одну ячейку, а не полный столбец. Как я могу сделать это для нескольких ячеек? Если я попробую. GetRange ("F18: 41"), то это не сработает. Пожалуйста, смотрите код ниже:

      var sss = SpreadsheetApp.openById('....'); // sss = source spreadsheet
      var ss = sss.getSheetByName('.....); // ss = source sheet

    //Get full range of data sheet 1

    var TypeWire = ss.getRange("F18");

    //get A1 notation identifying the range

    var A16Range = TypeWire.getA1Notation();

    //get the data values in range  

    var SDataSixteen = TypeWire.getValues();

     var tss = SpreadsheetApp.openById('.....'); // tss = target spreadsheet
     var ts = tss.getSheetByName('....'); // ts = target sheet

    //set the target range to the values of the source data
    ts.getRange("C40:C61").setValues(SDataSeven);


    if (SDataSixteen == "K")

    {
    ts.getRange("L16").setValue("A");
    } 
}

1 Ответ

1 голос
/ 06 января 2020

Метод getValues() класса Range возвращает многомерный (2D) массив. Элементами «внешнего» массива являются массивы, представляющие строки. Элементами внутренних массивов являются объекты, которые представляют значения ячеек для соответствующей строки.

Есть несколько способов сделать то, что вы ищете. Возможно, легче понять технику, показанную в ответе Купера: использовать вложенные операторы for.

Используйте один оператор for для итерации по строкам, а другой для l oop для итерации по ячейкам строк.

ВАЖНОЕ ПРИМЕЧАНИЕ:

Использование циклов для записи значений отдельных ячеек очень медленное. Для рекомендаций, пожалуйста, прочитайте https://developers.google.com/apps-script/guides/support/best-practices

Связанный

...