Копировать из Google Sheets в Google Docs без форматирования изменений - PullRequest
0 голосов
/ 10 марта 2020

Я создал Google Sheet, где мне нужно скопировать некоторые ячейки с таким форматированием, как Bold и Itali c. Я должен скопировать эту ячейку с форматами в Google Docs без изменения ее формата. Вот код, который я использовал, но он только копирует данные без форматов. Я не хочу, чтобы он форматировал, потому что иногда от автора зависит, как он форматирует текст, поэтому все, что мне нужно, это скопировать его как есть, не меняя форматов. Как мне скопировать его с форматированием в ячейках?

  var sourceSS = SpreadsheetApp.getActive();
  var ss = sourceSS.setActiveSheet(sourceSS.getSheetByName(tabName));
  var newDoc = DocumentApp.openById(target);

  var headertxt = ss.getRange('A32').getValues();
  var subjtxt = "Subject: ";
  var subjtitle = ss.getRange('D33').getValues();
  var copytxt = ss.getRange('D34:D').getValues();
  var rowCnt = copytxt.filter(String).length;

  var rowStart = 34;
  var txt = ss.getRange(rowStart, 4, rowStart+rowCnt, 1).getValues();

  var body = newDoc.getBody();

  var header = body.appendParagraph(headertxt+'\n');
  header.setBold(false);
  header.setHeading(DocumentApp.ParagraphHeading.HEADING4);


  var subj = body.appendParagraph(subjtxt + subjtitle +'\n');
  subj.setBold(true);


  var table = body.appendTable(txt);
  table.setBorderWidth(0);
  table.setBold(false);

  var newPage = body.appendPageBreak();

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

Спасибо!

1 Ответ

0 голосов
/ 11 марта 2020

Поскольку у вас есть диапазоны, содержащие нужные значения, вы можете использовать такие методы, как getBackground, getFontWeight, getFontStyle, getFontSize, getFontColors для извлечения информации, которую необходимо скопировать.

Затем вы можете использовать setAttributes для репликации значения, полученные при вставке абзацев в документ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...