Копирование и вставка данных в Google Sheets в другой столбец - PullRequest
0 голосов
/ 05 февраля 2020

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

Я хотел бы создать скрипт, который автоматически копирует значения из массива (B: B), например, в другой лист ИЛИ в следующий доступный столбец справа.

Вы можете обратиться к изображению ниже для большей ясности.

Образец

Я видел, что могут быть темы на этом, но все они были о копировании в другой ряд, в отличие от другого столбца.

Большое спасибо заранее!

1 Ответ

0 голосов
/ 06 февраля 2020

Метод getLastRow() используется для возврата позиции последней строки с содержимым .

Метод getLastColumn() используется для возврата позиции последний столбец с содержимым .

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

function copyColumn() {
  var ss = SpreadsheetApp.openById("ID_OF_THE_SPREADSHEET");
  var sheetFrom = ss.getSheetByName("SHEET_FROM");
  var sheetTo = ss.getSheetByName("SHEET_TO");
  var values = sheetFrom.getRange(NO_OF_THE_ROW_WHERE_DATA_STARTS, 3, sheetFrom.getLastRow(), 1).getValues();
  sheetTo.getRange(NO_OF_THE_ROW_WHERE_DATA_STARTS,sheetTo.getLastColumn()+1,values.length,1).setValues(values);
}

Вышеприведенный скрипт локализует все данные, которые должны быть скопированы с использованием метода getRange(), и копируется с использованием getValues().

  • NO_OF_THE_ROW_WHERE_DATA_STARTS - это значение, представляющее номер строки, где ваши данные начинаются (в вашем случае строка No of LP - Secured);

  • 3 - это значение, представляющее столбец C (где находятся данные, которые вы хотите скопировать) );

  • sheetFrom.getLastRow() - это значение, представляющее конец данных, которые вы хотите скопировать;

  • 1 - это значение представляет количество столбцов, которые необходимо скопировать.

После этого используется метод getRange(). для того, чтобы можно было определить, куда нужно вставить данные, и setValues() для того, чтобы фактически вставить их.

Примечание: Приведенный выше скрипт работает для разных электронных таблиц и / или разные листы или листы в одной электронной таблице. Если вы хотите использовать его в последнем случае, вам просто нужно указать название вашего листа вместо SHEET_FROM и SHEET_TO.

Более того, я предлагаю вам проверить следующие ссылки, так как они могут быть справки:

  1. Скрипт приложений класса листа - getRange () ;

  2. Скрипт приложения класса диапазона - getValues ​​() ;

  3. Сценарий приложения класса диапазона - setValues ​​() ;

  4. Sheet Сценарий приложений класса - getLastColumn () ;

  5. Лист Сценарий приложений класса - getLastRow () ;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...