2015-07-05 3 views
3

Я разработал этот код, чтобы позволить себе добавить несколько строк в таблицу под строкой таблицы, в которой находится курсор.Вставьте несколько строк таблицы в документ с помощью скрипта google

var ui = DocumentApp.getUi(); 
var answer = DocumentApp.getUi().prompt("Add Rows", "Insert the number of rows you want to add in the box below.\nMake sure you have your cursor placed in the table you want to append the rows to.",  DocumentApp.getUi().ButtonSet.OK_CANCEL); 
if(answer.getSelectedButton() == ui.Button.OK) 
{ 
    var doc = DocumentApp.getActiveDocument(); 
    var pos = doc.getCursor(); 
    var elementin = pos.getElement(); 
    var tablecell = elementin.getParent(); 
    var tablerow = tablecell.getParent(); 
    var table = tablerow.getParent(); 

    for(var i = 0; i < answer.getResponseText(); i++) 
     { 
     var row = table.asTable().insertTableRow(table.getChildIndex(tablerow)+1); 
     for(var j = 0; j < tablerow.getNumChildren(); j++) 
      { 
       row.insertTableCell(0); 
      } 
     } 
} 
doc.saveAndClose(); 

Код выполняется нормально, но когда я пытаюсь выделить строки, которые изначально были созданы с помощью функции по умолчанию Google таблицы здания Table\Insert Table→ и строками, приложенной из этой программы, замерзают страницы, и я получаю сообщение об ошибке

Файл недоступен Извините, но возникли проблемы с этим файлом. Пожалуйста, перезагрузите.

Если это происходит, вы можете сообщить об ошибке.

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

+0

Пробовал предоставлен фрагмент кода, и он отлично работает для меня. Как вы создали начальную таблицу в документе? через Doc ui или через другую функцию сценария приложений? – KRR

+0

Я создал таблицу вручную без скрипта. Я просто завис над создателем таблицы и выбрал строки и столбцы. Как и jjjjoe, мой файл, вероятно, просто поврежден и что код в порядке. –

ответ

0

Я согласен с KRR выше; нет ничего плохого в вашем фрагменте. Вероятно, что-то испорчено в вашем документе, и вам просто нужно использовать новый.

Вы должны иметь возможность просто сделать копию документа (Файл -> Сделать копию ...), а затем скопировать/вставить скрипт в новый документ. Если проблема связана с вами в новом документе, вам придется скопировать/вставить весь контент в документ, который вы создали с нуля (с помощью кнопки «+» на странице docs.google.com)

Смежные вопросы