У меня есть список данных о продукте на главном листе в B1: Bn
Я работал над функцией, чтобы перебрать этот список продуктов, и для каждого продукта, скопировать лист шаблона, переименовать егоскопируйте с названием продукта, поместите название продукта в соответствующую ячейку на этом листе.Это все работает нормально.
Последнее, что я хочу сделать, это получить URL-адрес этого нового листа и создать функцию, такую как = HYPERLINK ("https: / [sheet url]", "Product Name") и установите эту функцию в исходную ячейку на главном листе.
Построение и настройка функции работает нормально, если я указываю ее на известную фиксированную ячейку (в данном случае F1), но, похоже, не могуустановите эту функцию в исходную ячейку имени продукта во время его итерации.Я пробовал кучу разных идей, но ни одна из них не сработала.
function cloneSheetsIter() {
var ss = SpreadsheetApp.openById("1bF3oqKQtcM31mTLB0asEzntTTQvmiE1e7SUvenMJBi4"); //Get spreadsheet as var
var mainSheet = ss.getSheetByName("Main");
var dataRange = mainSheet.getRange("B1:B2")
var data = dataRange.getValues(); //Get Mainsheet as Var
var check01 = mainSheet.getRange("F1"); //cells to dump check info into
var iter = 0; //Used to limit the number of sheets this will create
var maxIter = 2;
while (iter != maxIter){
for (i in data){
iter+=1 //Counting number of iterations to check
var newName = data[i];
var newSheet = ss.getSheetByName('Template').copyTo(ss);
SpreadsheetApp.flush(); // Utilities.sleep(2000);
newSheet.setName(newName);
ss.setActiveSheet(newSheet);
var nameCell = newSheet.getRange("B2").setValue(newName);
var urlName = '=HYPERLINK("'+(ss.getUrl())+'#gid='+(ss.getSheetId())+'"'+',"'+newName+'")'; //building an in-cell hyperlink function
check01.setValue(urlName); //check01 is a fixed cell just for checking
}
}
}
Я уверен, что упускаю что-то довольно простое, но я не могу понять, что это такое.Есть идеи?
Спасибо!