Оптимизировать Google Script для сокрытия столбцов

Эти два сценария невероятно медленные. Я работаю с набором данных из примерно 32 столбцов на 1000 строк (растет довольно быстро).

Я прочитал и даже использовал код для обработки данных как массива, чтобы вы могли сделать только один вызов google-сервисам, но я не уверен, как это может помочь мне в этом случае.

Мне нужно скрыть определенные столбцы в зависимости от того, какой человек использует Google лист

Вот фактический код:

function HideColumns(){
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  var range = sheet.getRange("A1");
  sheet.hideColumn(range);
  range = sheet.getRange("C1:E1");
  sheet.hideColumn(range);
  range = sheet.getRange("G1");
  sheet.hideColumn(range);
  range = sheet.getRange("I1");
  sheet.hideColumn(range);
  range = sheet.getRange("K1");
  sheet.hideColumn(range);
  range = sheet.getRange("Q1:Z1");
  sheet.hideColumn(range);
  range = sheet.getRange("AC1:AG1");
  sheet.hideColumn(range);
}

function ShowColumns(){
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  var range = sheet.getRange("A1");      
  sheet.unhideColumn(range);
  range = sheet.getRange("C1:E1");
  sheet.unhideColumn(range);
  range = sheet.getRange("G1");
  sheet.unhideColumn(range);
  range = sheet.getRange("I1");
  sheet.unhideColumn(range);
  range = sheet.getRange("K1");
  sheet.unhideColumn(range);
  range = sheet.getRange("Q1:Z1");
  sheet.unhideColumn(range);
  range = sheet.getRange("AC1:AG1");
  sheet.unhideColumn(range);
}

Ответы на вопрос(2)

Ваш ответ на вопрос