#google-apps-script #google-sheets
#google-приложения-скрипт #google-листы
Вопрос:
У меня есть таблица, в которой есть данные в 100 строках. Я хочу, чтобы макрос посмотрел на столбец E (скажем, ячейка E2=2) и добавил 2 строки ниже E2, затем перейдите к следующей непустой ячейке в столбце E (скажем, E5=3, потому что 2 строки были добавлены ниже E2) и добавьте 3 строки ниже E5. Затем перейдите к следующей непустой ячейке в столбце E (скажем, E9, потому что 3 строки были добавлены ниже E5) и добавьте значение в E9 пустых строк ниже E9. И так далее, и так до тех пор, пока в столбце E. не останется непустых ячеек.
Ответ №1:
function nonblankInEAddRowsBelow() { const ss = SpreadsheetApp.getActive(); const sh = ss.getSheetByName('Sheet0'); let n = 0;//added line counnter sh.getRange(2, 5, sh.getLastRow() - 1, 1).getValues().flat().forEach((e, i) =gt; { if (e) { sh.insertRowsAfter(i 2 n, e);//2 is data start row n = e; } }) }
Комментарии:
1. Это сработало как заклинание, просто нужно было отредактировать название листа