Удалить строки всех строк без даты в первой ячейке - PullRequest
0 голосов
/ 05 октября 2018

Я пытаюсь собрать загруженные таблицы из разных банков, поставщиков карт и т. Д. И вставить каждую из них в отдельную вкладку в файле Google Sheets.Затем я хочу автоматизировать работу по организации всех этих операторов в одном формате (по столбцам), импортировать их в одну общую вкладку и отсортировать общую вкладку по дате.Результатом будет одна вкладка со всеми инструкциями, смешанными и отсортированными по дате.

Как часть этого мне нужно (для каждой отдельной вкладки), чтобы иметь возможность удалить все строки, не содержащие дату (формат даты ... фактически в формате dd.mm.yyyy, например, с правильной настройкой 04.10.2018 или в любом формате даты) в ячейке столбца "A" для этой строки.Если поиск по формату затруднен, я мог бы согласиться на сценарий, который удаляет все строки, имеющие какой-либо текст (например, не начинаются, как пример с 04), или пустую ячейку в столбце «A».

1 Ответ

0 голосов
/ 05 октября 2018

Попробуйте что-то вроде этого:

Самая сложная проблема - выяснить, что представляет собой дата.Если бы вы гуглили, что в конечном итоге столкнулись бы с ответом о переполнении стека.Это простой скрипт, но я его не тестировал.Так что, если он не работает, попробуйте отладить его.

function isADate(d){
  return (Object.prototype.toString.call(d) === '[object Date]');
}

function delNonDatesInFirstCol(){
  var sh=SpreadsheetApp.getActiveSheet()
  var vA=sh.getDataRange().getValues();

  var n=0;
  for(var i=0;i<vA.length;i++){//if you have a 1 header row start with var i=1;
    if(!vA[i][0] || !isADate(vA[i][0])){
      sh.deleteRow(i + 1 - n);
      n+=1;
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...