Я успешно реализовал код для копирования вопросов опроса из листа Google в форму Google. В настоящее время, когда я делаю это, я добавляю вопросы в конец формы, добавляя PageBreakItem, затем добавляя GridItems. Это создает разрыв страницы и добавляет новый раздел в форму Google.
Я хотел бы удалить самый последний раздел перед добавлением новых вопросов, но безуспешно. В идеале удаление раздела приведет к удалению всех элементов в этом разделе / странице. В пользовательском интерфейсе форм есть опция «Удалить раздел», которая делает то, что я хотел бы.
Мне удалось удалить последний PageBreak, но все, что я могу сделать, это объединить вопросы из двух разделов. Я подумал, может быть, пытаясь удалить SectionHeaderItem, но я не верю, что разрывы страниц / разделы, созданные в пользовательском интерфейсе, совпадают с элементами заголовка раздела в коде.
Любые идеи о том, как удалить Раздел вопросов?
Вот фрагмент моего скрипта:
function clearForm()
{
var setupSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Setup'); //Create variable for the Setup sheet
var form = FormApp.openById(setupSheet.getRange("D1").getValue()); //Open form using the form ID from the setup sheet
var secItems = form.getItems(FormApp.ItemType.SECTION_HEADER); //Get array of all page break items
var pageItems = form.getItems(FormApp.ItemType.PAGE_BREAK); //Get array of all page break items
var delSection = form.deleteItem(pageItems[3]);
}
function editForm()
{
var setupSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Setup'); //Create variable for the Setup sheet
var metricSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Final Metric Statements'); //Create variable for the Metric Statements sheet
var form = FormApp.openById(setupSheet.getRange("D1").getValue()); //Open form using the form ID from the setup sheet
var pageFour = form.addPageBreakItem().setTitle('Questions');
var item = form.addGridItem();
item.setRows(emotArray[i]);
item.setColumns(['Strongly Disagree', 'Disagree','Slightly Disagree', 'Neither Disagree or Agree', 'Slightly Agree', 'Agree', 'Strongly Agree', 'N/A']);//Add column header
item.setRequired(true);
};
Вот опция пользовательского интерфейса формы для удаления Раздела и всех элементов в разделе: Google Возможность удаления раздела форм