@trazer91

Нужен макрос, при исполнении которого будет копироваться строка и вставляться ее значения ниже в свободную строку. Как это сделать?

Имеется строка с динамической датой (2:2), от которой, собственно, зависят все данные в ней. Необходимо вести историю изменения значений в этой строке путем создания лога в виде списка. Для этого нужно при исполнении макроса скопировать строку и вставить ее значения ниже в свободную строку, чтобы таким образом создавалась таблица.

На рисунке показал, как это должно выглядеть:
1. строка, значения которой нужно скопировать;
2. строки, которые уже были скопированы до этого таким методом;
3. первая свободная строка, куда будут копироваться значения после исполнения макроса.

604a0cd10432e727905491.png

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

UPDATE:
Нашел решение своего вопроса - скрипт в гугл таблицах:

function copytestdata() {

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName("original");
var sheet2 = ss.getSheetByName("copy");

sheet1.getRange("A2:H1").copyTo(sheet2.getRange(sheet2.getLastRow()+1,1,1,7), {contentsOnly:true});
}

original и copy - названия листа, замените на свои в моем случе они одинаковые
A2:H1 -замените на свой диапазон, который будет копироваться
  • Вопрос задан
  • 368 просмотров
Решения вопроса 1
@trazer91 Автор вопроса
Нашел решение своего вопроса - скрипт в гугл таблицах:

function copytestdata() {

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName("original");
var sheet2 = ss.getSheetByName("copy");

sheet1.getRange("A2:H1").copyTo(sheet2.getRange(sheet2.getLastRow()+1,1,1,7), {contentsOnly:true});
}

original и copy - названия листа, замените на свои в моем случе они одинаковые
A2:H1 -замените на свой диапазон, который будет копироваться
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
ForestAndGarden
@ForestAndGarden
Совершенствовать среду обитания
  1. Макросов в Гугл-Таблицах нет. Там скрипты.
  2. Понятное дело, что формулами задумку не решить, ведь они не для такого придуманы.
  3. Воспользуйтесь сервисами интеграций: IFTTT, Zapier, Integromat, Microsoft Flow etc. Программировать уметь не особо надо, но понимать логику решения задачи надо чётко.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы