Как заполнить недостающие данные на основе заполненных ячеек - PullRequest
0 голосов
/ 05 июля 2019

Я пытаюсь заполнить пробелы в столбце, значения пробелов основаны на предыдущей заполненной ячейке.Я хочу сделать это с помощью скрипта приложения Google, но я не знаю, как начать подходить к этой проблеме.

до скрипта

AAA
(blank)
(blank)
(blank)
BBB
(blank)
(blank)
CCC
(blank)
DDD
EEE
(blank)
(blank)

После скрипта

AAA
AAA
AAA
AAA
BBB
BBB
BBB
CCC
CCC
DDD
EEE
EEE
EEE

1 Ответ

0 голосов
/ 05 июля 2019

Попробуйте:

function fillBlanksWithLastValue() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getActiveSheet();
  var rg=sh.getRange(1, 1, sh.getLastRow(),1);
  var vA=rg.getValues();
  for(var i=0;i<vA.length;i++) {
    if(vA[i][0]) {
      var lastValue= vA[i][0];
    }else{
      vA[i][0]=lastValue;
    }   
  }
  rg.setValues(vA);
}

Это может быть немного лучше, если у вас есть пустые строки в верхней части.

function fillBlanksWithLastValue() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getActiveSheet();
  var rg=sh.getRange(1, 1, sh.getLastRow(),1);
  var vA=rg.getValues();
  var lastValue='';
  for(var i=0;i<vA.length;i++) {
    if(vA[i][0]) {
      lastValue= vA[i][0];
    }else{
      if(lastValue) {
        vA[i][0]=lastValue;
      }
    }   
  }
  rg.setValues(vA);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...