Google App Script для объединения столбцов - PullRequest
0 голосов
/ 12 марта 2012

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

Так что, если следующие данные: Колонка 1, колонка 2, колонка 3, колонка 4 Ряд 1: A, B, C, D Ряд 2: ,,, E

Я бы хотел получить Ряд 1: A Ряд 2: B Ряд 3: C Ряд 4: D Ряд 5: E

Мне бы хотелось, чтобы это было неразрушающим для исходного листа, поэтому необходимо создать новую вкладку электронной таблицы с уникальным именем. Важно уникальное имя, потому что я / я хотел бы запустить эту функцию на нескольких электронных таблицах, которые все разные. Уникальное имя позволит избежать совпадения.

Просьба помочь мне написать скрипт для этого транспонирования в электронных таблицах приложений Google

Спасибо за помощь!

1 Ответ

1 голос
/ 14 марта 2012

Вот скрипт, пожалуйста, дайте мне знать, если у вас возникнут проблемы, в данный момент он игнорирует пустые ячейки и значение «0».

function myFunction() {
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  var sheet1 = spreadsheet.getSheets()[0];
  var lastRow = sheet1.getLastRow();
  var lastColumn = sheet1.getLastColumn();
  var values = sheet1.getRange(1, 1, lastRow, lastColumn).getValues();
  var d = new Date();
  var newSheet = spreadsheet.insertSheet("Sheet: "+d.getTime());
  var counter=1;
  for (var i=0;i<=lastRow-1;i++) {
    for (var j=0;j<=lastColumn-1;j++) {
      if(values[i][j]!="") {
        newSheet.getRange(counter,1).setValue(values[i][j]);
        counter++;
      }
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...