How to automatically insert data into Google Docs using Apps Script (RU)

แชร์
ฝัง
  • เผยแพร่เมื่อ 22 ก.ค. 2019
  • How to automatically insert data into Google Docs using Apps Script (RU)
    The video explains how to create a Google Doc from a template and fill this template with data from a spreadsheet.
    You can get the script code from here:
    it4each.com/en/blog/kak-avtom...

ความคิดเห็น • 46

  • @ayzatmalov9725
    @ayzatmalov9725 3 ปีที่แล้ว +5

    Качественно, и главное доходчиво. Респект

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว +2

      Спасибо огромное!

  • @user-un6hx2wq6j
    @user-un6hx2wq6j 3 ปีที่แล้ว +7

    Замечательное видео. Очень нужная вещь. Для того, кто занимается созданием большого количества документов из темплейтов вообще обязательное для просмотра. Хотя, гипотетически можно частично решить используя документы в гугл шитс

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว +2

      Спасибо!

  • @user-rh2uv1vk5b
    @user-rh2uv1vk5b 3 ปีที่แล้ว +2

    Большое спасибо за видео!

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว +2

      И Вам спасибо!

  • @ctacsuhanov4628
    @ctacsuhanov4628 2 ปีที่แล้ว +4

    Добрый день!)
    Шикарное видео! Всё понятно.
    Можете ли подсказать как можно сделать подставление текста без галочек как у вас, просто из определённой строки?
    Например, формулами вывожу нужный текст в ячейки в определённой строке, например в 10-той строке гугл таблицы.
    И чтобы при нажатии на кнопку скрипта переносило нужный текст в гугл документ.
    Но есть ещё условие.
    Нужно ещё создать несколько скриптов, чтобы при нажатии на кнопку со втором скриптом, подтягивало текст например из 11-ой строки и т.д.

    • @IT4eachcom
      @IT4eachcom  2 ปีที่แล้ว

      Здравствуйте! Спасибо!
      Выбрать текст из конкретной строки ещё проще - вместо блока, где ищется строка по *true* в чекбоксе, просто указываете номер этой строки.

  • @user-ml5kp2xo2m
    @user-ml5kp2xo2m 4 ปีที่แล้ว +6

    Очень хочу из таблицы по кнопке заполнять и создавать договор в формате Docs. Друзья, не пойму, что может не нравится ? Почему дизлайки. Тема интересная, но пока смотрел ничего не понял. Автор, скажите, с чего мне начать чтобы стать понимать о чем тут речь? Благодарю! Это единственное видео которое я нашел на эту тему на русском языке

    • @IT4eachcom
      @IT4eachcom  4 ปีที่แล้ว +1

      Вы имеете в виду формат Google Docs?

    • @user-ml5kp2xo2m
      @user-ml5kp2xo2m 4 ปีที่แล้ว +1

      @@IT4eachcom Да

  • @Alex-cr7oo
    @Alex-cr7oo 2 ปีที่แล้ว +1

    Даже у такого чайника, как я работает (просто справка, три поля данных+2 поля: время и дата), соответственно убрал выбор шаблона и контрагента. Теперь еще допилить осталось преобразование в pdf и отправку Email.

    • @IT4eachcom
      @IT4eachcom  2 ปีที่แล้ว

      Супер! Мои поздравления!
      Кстати, преобразовать в pdf Apps Script ещё позволит. Но вот по имейл отправить даст только с ссылку, а не сам pdf-файл.
      Чтобы отправить именно файл, как вложение, потребуется доступ по API.

    • @Alex-cr7oo
      @Alex-cr7oo 2 ปีที่แล้ว

      @@IT4eachcom Кстати, если поле "дата" в столбце-источнике задается руками (например, дата рождения), а не функцией, то достаточно отформатировать этот столбец, как текстовый, и утилита форматирования даты не нужна.

  • @ponyc9230
    @ponyc9230 3 ปีที่แล้ว +2

    Хорошее видео
    Подскажите, а таким же образом можно и таблицы вставлять из google sheet?

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว

      Спасибо за оценку!
      Ну уверен, что понял вопрос о вставке таблицы. Если имелось в виду: можно создать в Google Doc таблицу и таким же образом, как рассказано в видео, менять в ней данные - то да, можно без проблем.
      Если же нужна вставка таблицы с произвольными данными, то, пожалуйста, уточните вопрос.

  • @Kashimirush
    @Kashimirush 3 ปีที่แล้ว +2

    А изменяемые данные в шаблоне обязательно должны заключаться в фигурные скобки, или это для облегчения понимания?

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว +3

      Да, именно для облегчения понимания.

  • @user-mu2bm7ox2v
    @user-mu2bm7ox2v 3 ปีที่แล้ว +1

    Здравствуйте , писал на основе видео свой скрипт и наткнулся на такого рода проблему , я создаю файл и читаю из ячейки в переменную для замены дату которая добавляется в документ но вместо нужных мне допустим 01.04.2020 я получаю строку "Fri Dec 04 2020 00:00:00 GMT+0300 (Москва, стандартное время)" , как решить чтобы в переменной хранилось только "01.04.2020" которую я вношу как в имя документа так и в его текст ?

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว

      Здравствуйте!
      В JS дата - это отдельный самостоятельный формат. Ниже пример, как получить сегодняшнюю дату в нужном Вам текстовом формате:
      let today = new Date();
      let timeZone = Session.getScriptTimeZone()
      let todayStr = Utilities.formatDate(today, timeZone, 'dd.MM.yyyy');

  • @user-or2vs6rm9i
    @user-or2vs6rm9i 3 ปีที่แล้ว +1

    А какой скрипт надо написать чтобы из таблицы когда данные в гугл док переносятся, название файла задавалось из таблицы а не копия шаблона?

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว +1

      Здравствуйте!
      Для этого нужны значительные изменения скрипта. И в комментарии этого не объяснить. Вот моя почта для связи: it4each.com@gmail.com

  • @nataliabogdanova182
    @nataliabogdanova182 3 ปีที่แล้ว +1

    Подскажите пожалуйста, как можно исправить:
    В гугл таблице дата стоит 16.12.2020, при этом в гугл док она подтягивается вот в таком виде: Wed Dec 16 2020 00:00:00 GMT+0200 (Восточная Европа, стандартное время).
    Нужно, чтобы и в гугл доке дата отражалась как 16.12.2020.
    Скрипт делала на основании вашего примера. У вас все работает по умолчанию, а у меня - нет. Подскажите пожалуйста, почему так и как это можно исправить.
    Спасибо.

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว

      Здравствуйте!
      В JS (и Apps Script) существуют свой собственный формат даты. Ниже приводится пример кода, который преобразует формат даты в строковое значение:
      let today = new Date();
      let timeZone = Session.getScriptTimeZone()
      let todayStr = Utilities.formatDate(today, timeZone, 'dd.MM.yyyy');
      Подставьте в *today* значение из таблицы в формате дата (Wed Dec 16 2020 00:00:00 GMT+0200 (Восточная Европа, стандартное время).) и получите то же значение в формате строки: 16.12.2020.

    • @nataliabogdanova182
      @nataliabogdanova182 3 ปีที่แล้ว

      @@IT4eachcom Спасибо за ответ. А если совсем для "чайников": для вашего примера, в какую часть кода это нужно ставить.

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว +1

      Примерно сюда:
      var client = {
      name: sc.getRange(indx, 4).getValue(),
      id: sc.getRange(indx, 5).getValue(),
      id_dateOfIssue: sc.getRange(indx, 6).getValue(),
      };

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว +1

      То есть данные столбца *Дата* должны быть предварительно обработаны перед тем, как быть присвоенными переменной в json формате.

  • @JuliaPtiza
    @JuliaPtiza 3 ปีที่แล้ว +2

    Вы случайно не знаете, как можно скопировать таблицу из гугл-таблиц в гугл-документы, сохранив при этом форматирование? Нигде не могу найти.. Необходимо в приложение к договору вставлять смету в красивом виде, а пока только получилось просто подтянуть сырую таблицу. Настраивать форматирование скриптом в самом гугл-доке кажется очень неудобным и сложным. Да и как-то проходиться по каждой ячейке для ее форматирования - странно..
    Должна же быть какая-то аналогия процессу ctrl+c таблички в Google Sheets ---> ctrl+v в документ Google Docs..
    Если сможете что-то посоветовать - буду счастлива. Заранее спасибо!

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว

      Здравствуйте!
      Возможно, Вы имеете в ввиду какие-то особенное форматирование, но шрифт, его размеры и его стиль вполне себе сохраняются, если банально скопипастить ячейки Google Spreadsheet в Google Doc.
      А если сохранить связь между документами, то все изменение значений и формата в ячейках spreadsheet будут перенесены в Google Doc (правда, для этого надо будет обновить таблицу в Google Doc).

    • @JuliaPtiza
      @JuliaPtiza 3 ปีที่แล้ว

      @@IT4eachcom я про то, как это сделать с помощью скрипта. У меня есть шаблон договора и приложения. Договор я легко заполняю по принципу, описанному в вашем видео. А в приложении у меня должна быть таблица сметы, красиво отформатированная.
      Вот как скриптом ее можно скопировать и вставить в документ, сохранив форматирование из гугл таблицы?

    • @JuliaPtiza
      @JuliaPtiza 3 ปีที่แล้ว +1

      @@IT4eachcom как сделать ручным образом я понимаю. Мне нужно заполнение документа автоматически

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว

      На заказ возможны любые доработки моего скрипта. Для этого нужен пример таблицы, которую надо вставить в документ и образец, как всё это должно выглядеть. Мой адрес: IT4each.com@gmail.com

  • @konstantinblo37
    @konstantinblo37 2 ปีที่แล้ว +1

    Здравствуйте! возможно в гугл докс создать автозаполнение слов, при вводе первых букв?

    • @IT4eachcom
      @IT4eachcom  2 ปีที่แล้ว

      Здравствуйте!
      Если в ячеке подключена валидация данных, то автозаполнение уже присутствует по умолчанию.

    • @konstantinblo37
      @konstantinblo37 2 ปีที่แล้ว

      @@IT4eachcom Речь идет не об ячейках таблицы, а docs

    • @IT4eachcom
      @IT4eachcom  2 ปีที่แล้ว

      Не представляю как это вообще может выглядеть в принципе.
      Должны быть
      1.) выделенное поле ввода
      2.) и список значений для подстановки.
      И как это всё это можно организовать в гуглдоке?
      Из чего брать список и что считать полем ввода?

  • @sanygoyou8125
    @sanygoyou8125 2 ปีที่แล้ว +1

    у меня замена не произошла..с начала ролика...все по видео писал, что не так?

    • @IT4eachcom
      @IT4eachcom  2 ปีที่แล้ว

      Здравствуйте!
      Не видя кода сложно сказать.
      Если нет сообщения об ошибке в скрипте, то скорее всего неправильно указаны метки на листе Doc.

  • @omonmurad
    @omonmurad 3 ปีที่แล้ว +2

    здравствуйте! я добавляю другие слова на principal но они не работают, почему?

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว

      Здравствуйте! Менять/добавлять метки необходимо сразу в трёх местах: в шаблоне документа, в таблице и в скрипте. Причём в скрипте это делается сразу в нескольких местах. По всей видимости, Вы где-то пропустили замену/добавление.

    • @omonmurad
      @omonmurad 3 ปีที่แล้ว +1

      @@IT4eachcom да я так сделал но если я добавляю то весь код накрывается и работают только principal.name , principal.id если у вас есть время и ВК то могу ли я вам скинуть скриншот чтобы вы посмотрели?

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว

      Подробно опишите проблему и вложите в сообщение свой скрипт (можно также добавить ссылки на файлы). Мой емейл: IT4each.com@gmail.com

    • @omonmurad
      @omonmurad 3 ปีที่แล้ว +1

      @@IT4eachcom всё, понял спасибо, сделаю отправлю

    • @IT4eachcom
      @IT4eachcom  3 ปีที่แล้ว

      Ок!