Google Forms to PDF & Email while storing data in Google Sheets

Поделиться
HTML-код
  • Опубликовано: 24 янв 2025

Комментарии • 584

  • @roomforrentcuba
    @roomforrentcuba 3 года назад +33

    Dude, you have absolutely no idea about how much easier my life has become since I found you. Of course it takes a little bit of time and brains to understand what you are explaining and adapt it to my specific needs (I'm no programmer), however... the time that this automations are earning me is countless,. My life is much easier now thanks to you. Thank you my friend, please, keep up the good work, we need you, hahaha :)

  • @allisonharvill936
    @allisonharvill936 4 года назад +11

    I have no formal tech training but have been designated the tech person for a small non-profit and needed to do exactly what this tutorial does in a needed it done last week time frame. Thank you for making these videos. They are a lifesaver.

  • @nikluz3807
    @nikluz3807 4 года назад +9

    I want to sincerely thank you for all of these tutorials. I got my degree last year and have been working with Google suite for several years now and just scored my first freelance programming job building an application in Google suite for a company

  • @ridingwithcharley6821
    @ridingwithcharley6821 2 года назад +3

    With a little work, I was able to use this basic outline, modify it a little, and create an actual working invoice I can create from my phone that is ready to email without having to be near a printer and computer. I can now create an invoice immediately and email when I have finished the work order. Thanks for the video's... so much better than other YT channels.

  • @davidclough6288
    @davidclough6288 4 года назад +2

    This was AMAZING! It's the first time I've ever had no errors in my code. Thanks so much. I also appreciate how you didn't edit out your troubleshooting. That helped!

    • @daleramirez7438
      @daleramirez7438 3 года назад

      Hi! Were you able to make it work? I tried and copied what he did in the video but I got notified with exception: invalid argument: attachments I don't how to troubleshoot it. I have no background in programming. Can you help me? 🙂

  • @abdulmajeedrozan634
    @abdulmajeedrozan634 3 месяца назад

    Great, Lectures, Thanks and Kudos to You. Just Now Finished by creating interactive Email System for My Clinic in Dubai, Where Patient get their immediate health indicator report. Responses are Amazing. Learned from the master. Thank You.

  • @alekdaniels
    @alekdaniels Год назад

    The best part of this, aside from all these cool stuff, is how we were able to see the thought process of it all. Plus the troubleshooting bits really gave it an approachable feel. I feel confident I can do this.

  • @emingunduz4690
    @emingunduz4690 2 года назад +1

    You make me feel like I'm the best coder 😄 It worked so much for my work. I create order form. No more losting papers. Thank you

  • @gabrielcambronero4338
    @gabrielcambronero4338 Год назад

    It took me hours to do it, but bro.. you are something else.. really!! Thank you so much, you can't imagine how this is going to change my life!

  • @cheskavillanueva5772
    @cheskavillanueva5772 4 года назад +30

    Awesome! Plese don't get tired of doing more videos like this! Maybe you can share the script as well? Heh. :)

  • @ciarajanay23
    @ciarajanay23 4 года назад +3

    This is exactly what I needed! I am so proud of myself. I was able to follow along and using the Google App Script Reference you showed I was able to have it send as my alias and add an additional email to send the file to myself too! I will be doing more of your tutorials to learn more. And I have little to none Java Script knowledge.

  • @RoiUltraviolet
    @RoiUltraviolet 2 года назад +2

    Excellent video, very good explanations with all the necessary details to understand simply and quickly. Congratulations and thank you for the remarkable quality of your knowledge sharing.

  • @cornevanzyl5880
    @cornevanzyl5880 4 года назад +1

    You have unlocked Pandora's box of creativity for me. Thank for teaching us🙏

  • @namwan.c6947
    @namwan.c6947 Год назад +8

    Thank you very much for your tutorial. As of the present (2023), some methods in the code cannot be used, such as the "removeFile" function, which can be replaced by using the "setTrashed(true)" method.

  • @vrm2009
    @vrm2009 2 года назад

    Thanks a ton for making this very useful video. This covered a lot of use cases and opened a ton of possibilities for future projects!!
    Quick tip for anyone who is facing the issue where google doc is getting created with values from form but the PDF doesnt reflect it, you can just add this line below before creating the PDF ie, last line of the createPDF()

    openDoc.saveAndClose();
    const pdfFile = pdfFolder.createFile(blobPDF).setName("My PDF");

  • @revolvency
    @revolvency 10 месяцев назад

    this is actually life changing for cheap marketers like me, thanks for the tutorial, much appreciated!

  • @ericagallego7825
    @ericagallego7825 Год назад

    you're real life saver. Please continue making videos about these.

  • @mohnasnassr9816
    @mohnasnassr9816 4 года назад +1

    Great teaching skills. Awesome tutorials!

  • @juniorwalewangko
    @juniorwalewangko 4 года назад +2

    I've tried and this is awesome.
    For me this method has create a paperless system for my work.
    Awesome..!!!
    Definetely going to learn alot from this channel.
    Keep up the good work.👍🏻🙏🏻🙏🏻

  • @therghammotlak2755
    @therghammotlak2755 4 года назад +1

    You are an amazing teacher

  • @iyeate
    @iyeate Месяц назад

    Amazing work thank you

  • @bocobox
    @bocobox 4 года назад +2

    Addicted to your video. Just like daily routine. Thanks 😊

  • @rajeshparkar5683
    @rajeshparkar5683 4 года назад

    Thank you for step by step explanation

  • @MsBoolo
    @MsBoolo Год назад

    Awesome tutorial ♥♥♥♥♥

  • @victormenna
    @victormenna 3 года назад

    This tutorial is a new art form. Amazing

  • @huseyinataseven6032
    @huseyinataseven6032 Год назад

    A huuuuuuuuuuuge thumbs up!!! Thank you very much. You are a life saver.

  • @NamNguyen-hn5os
    @NamNguyen-hn5os 3 года назад

    thank you so much for this Video. Please keep up the good work. Much love from Vietnam!!

  • @gamingfunforall
    @gamingfunforall Год назад

    very useful, as i was searching this from since many time but it seems i wasn't having option other than an add-on, but you have done a grate job brother, thanks for this video !!

  • @baljka17
    @baljka17 4 месяца назад

    Man this is crazy and saved my life!

  • @calidadsed4713
    @calidadsed4713 Год назад +1

    Excelente muchas gracias por su ayuda, que mi Dios lo bendiga por siempre. 🙏

  • @luiscorado2868
    @luiscorado2868 4 года назад +4

    Excellent like always!!!

  • @ekeretteekanem
    @ekeretteekanem 3 года назад

    huh.. super long and fun journey. Nicely delivered!

  • @gravityelements14
    @gravityelements14 3 года назад +3

    TriggerEvent step seems to have changed since you made this video. Google sheet form submit event shows a caution message “make sure you use this form submit trigger with SpreadsheetTriggerBuilder”. I am unable to pass googlesheet info data - that comes from google form - to google doc variables using event trigger. Any advise?

  • @pedrotomasdominguezcardena9206
    @pedrotomasdominguezcardena9206 4 года назад

    Eres brillante!☆☆☆☆☆ El mejor canal de GAS☆☆☆☆☆

  • @aldoalbar3516
    @aldoalbar3516 Год назад

    wow thaank you ... well ... the slowmo guys would be very useful here ...

  • @bobykumar3960
    @bobykumar3960 4 года назад

    PRICELESS WORK ,,,,,FREE,,, THANKS A LOT

  • @SVBP
    @SVBP 10 месяцев назад +1

    its not working for my now. showing error ['First Name'] and etc., plz help me

  • @TinaFasulo
    @TinaFasulo 4 года назад

    Thank you, this is great! I learnt lot of things watching your video!

  • @eugenepaulus9946
    @eugenepaulus9946 4 года назад +1

    Thank you for these videos. I appreciate you!

  • @ubaidshakri7987
    @ubaidshakri7987 Год назад

    Great info..thank you

  • @JustinAquino
    @JustinAquino 3 года назад +1

    This was awesome! Learned so much!

  • @lasaventurasdevitoelgatoma3405
    @lasaventurasdevitoelgatoma3405 4 года назад +1

    ur channel it is going to be big in no time!! congratulations 4 the good work n sharing!!

  • @FaccinEnrico
    @FaccinEnrico Год назад

    Wowwwww, just amazing! Thanks a lot!

  • @elricho72
    @elricho72 3 года назад

    Great Video, thank's David

  • @Akash-ef4vx
    @Akash-ef4vx 4 года назад +1

    Many Many thanks.its working..

  • @traingappscript3624
    @traingappscript3624 4 года назад +1

    Really great video here. Thanks !

  • @hanshima_
    @hanshima_ 4 года назад

    Thank you so much. Just an incredible tutorial.

  • @harry33316
    @harry33316 4 года назад +1

    It’s very impressive! Thank you!

  • @CikIkhlas306
    @CikIkhlas306 3 года назад +1

    VERY BRILIANT !!!

  • @taufikismail4704
    @taufikismail4704 4 года назад +11

    Thank you for this awesome tutorial. I have a question. What if the respondent have to upload an image to the form which will be appear as gdrive link in spreadsheet. Then I want to show the image submitted in the PDF.

    • @narendranathansk5918
      @narendranathansk5918 4 года назад +1

      Dear Sir kindly the solution for this question. Also resize of image that need to be fit in the template.

    • @julianasasantos
      @julianasasantos 3 года назад

      Did you learn how to do that?? I need it too

  • @fabriciosouza408
    @fabriciosouza408 4 года назад +1

    Just awesome! That's was exactly what I needed. Thanks a lot buddy!

  • @PavanKumar-gg8jq
    @PavanKumar-gg8jq 3 года назад +1

    will it be possible to create pdfLink directly from google sheets without using trigger or after form submission function? Directly to generate pdflink in the google sheet and store the generated link in the pdfLink cell.

  • @AndeanFace
    @AndeanFace Год назад +1

    Hi @ExcelGoogleSheets, I hope that you are doing very well! I made the script as you presented it, and was working very well, but at the momment it seems to have two problems, and maybe you have some information about them. 1) It seems that the "Class File" from Apps Script, the method "removeFile" used at the end of the script "tempFolder.removeFile(newTempFile); " isn't anymore supported, it appears crossed over in .gs . Could you recomend other method to do the same part of the script? And my second question, I receive this message of error: "TypeError: Cannot read properties of undefined (reading 'namedValues')" on the constant declaration, line 3: "const info = e.namedValues;" in the function declaration. Do you have the seame error message? Many thanks for your help!

  • @danielch8186
    @danielch8186 Год назад

    Perfect bro. You helped me a lot

  • @pvamshikrishna3169
    @pvamshikrishna3169 3 года назад +1

    Finally, script is working fine.

    • @jayasri-ft8040
      @jayasri-ft8040 3 года назад

      I spend whole day. But failed, can you share your sources code sir

  • @lucasflorentinovarella7817
    @lucasflorentinovarella7817 3 года назад

    Man, you are THE guy. Yhank you so much. That will change my life. hahaha. Brilliant!

  • @dbclmy
    @dbclmy Год назад

    Thanks Mate! You have been a very big help.

  • @ciarajanay23
    @ciarajanay23 4 года назад

    I really appreciate your channel!

  • @richardpowell4667
    @richardpowell4667 2 года назад

    You are amazing! You know your stuff. I like how you basically say "I'm going to do this and let's see how we do that". I noticed your permissions was causing drama to send the email. Would it be that the user of the form would have those permissions come up on their end and have to give permission too? I imagine it should be. Cheers

  • @camposricardo86
    @camposricardo86 2 года назад

    Thank you so much Chi! say I want to get an image uploaded in the form, should I use the mime type 'image'?

  • @bobykumar3960
    @bobykumar3960 4 года назад +6

    MAY BE ONE DAY I HAVE THE HONOUR OF MEETING YOU..

  • @josephsalva4060
    @josephsalva4060 2 года назад

    This has been very helpful. I appreciate this. Have you ever made a video on how to add images from google forms into the PDF?

  • @lasaventurasdevitoelgatoma3405
    @lasaventurasdevitoelgatoma3405 4 года назад +1

    Holy Mary, u r a genius!!

  • @ilhan_idriss
    @ilhan_idriss Год назад

    Oh man, this makes my life easy

  • @valentinpereira810
    @valentinpereira810 4 года назад +1

    Thank you so much ! I have a question :
    When a form es edited and resubmitted. The namedvalues code only returns the modified values, there is a way to get all the values of the current row and execute the pdf creation? I Will be very grateful for your response !
    Thank you !

  • @fdphy
    @fdphy 2 года назад +4

    Thank you for this Tutorial, I had trouble deleting the temp Document. But on looking through the references the removeFile() method in tempFolder.removeFile(newTempFile); is depreciated. So all temp Documents end up on the root folder. A new way delete is rather simple, just use newTempFile.setTrashed(true);

  • @demo7191
    @demo7191 4 года назад +1

    Until 09:37 It work everything for me, but when you converting that script to reusable function are mysteries step for me, because I'm starting get a errors each time. How to add that event e correctly?

    • @Didikmuhamadakbar
      @Didikmuhamadakbar 4 года назад

      me to

    • @demo7191
      @demo7191 4 года назад +1

      @@Didikmuhamadakbar I found a solution. It shows a some error, but it works:
      function afterFormSubmit(e) {
      Logger.log(JSON.stringify(e));
      var formValues = e.namedValues;
      Logger.log(formValues);
      const info = e.namedValues;
      createPDF(info);

    • @Didikmuhamadakbar
      @Didikmuhamadakbar 4 года назад

      @@demo7191 ok, i will try it,

  • @diagnosticoporimageneshosp970
    @diagnosticoporimageneshosp970 4 года назад +3

    The best channel to learn about google sheet
    Question:
    When a form is edited and resubmitted.
    The namedvalues ​​code only returns the modified values, there is a way to get all the values ​​of the current row and execute the PDF creation ?
    thx

    • @valentinpereira810
      @valentinpereira810 4 года назад

      Hi, did you find a way to fix that ? I will be very grateful to you !

    • @diagnosticoporimageneshosp970
      @diagnosticoporimageneshosp970 4 года назад

      @@valentinpereira810
      Yes,
      const ActiveSS = SpreadsheetApp.getActiveSpreadsheet();
      const ActiveSheet = ActiveSS.getActiveSheet();
      const ActiveRow = e.range.getRow();
      const Name = ActiveSheet.getRange('B'+ ActiveRow).getValue();
      const ContactEmail = ActiveSheet.getRange('C'+ActiveRow).getValue();

  • @bokkenknuser
    @bokkenknuser 4 года назад +1

    This is brilliant! Thank you!

  • @mowlawn2882
    @mowlawn2882 2 года назад +1

    Hi! I have no training and new at this so this was perfect! Thank You! I am just having trouble with an addition. I added a column to the sheet to calculate two columns and just want to show the total on the google doc. It looks like it won't extract since it's a calculated value. Can you please tell me what script I need to accomplish this? THANKS AGAIN :)

    • @richardpowell4667
      @richardpowell4667 2 года назад

      I would try to pass the dependent cells values in your sheet into the script and use the script to calculate instead, then store that in a variable. I'd have thought it could pass calculated values....?

  • @danisentinella
    @danisentinella 4 года назад

    You are incredible! Thank you so much for helping me

  • @thanakornsairat8711
    @thanakornsairat8711 3 года назад +4

    i've been having an error saying Cannot read property 'namedValues' of undefined can anyone help?

  • @icoldwell
    @icoldwell 4 года назад +1

    Great video ! Thank you. Your projects are so easy to follow, and you make the learning easy.
    Any change you could do a video tutorial on how to gather form data like this but from an externally hosted HTML web form and populate a google sheet?
    This is a use case I would often like to use.
    Once again thanks for fabulous easy learning tutorials. :)

    • @a7medabd-elwahab674
      @a7medabd-elwahab674 3 года назад

      I want this code please

    • @emingunduz4690
      @emingunduz4690 2 года назад

      Hi guys. I foundt how to do that. I'v just made it. He has a video how to make a htmlTeplate file. after you did this you need to create string html output from that template. HtmlService.createHtmlOutput(htmlBody); // const blobPDF = htmlToPDF.getAs(MimeType.PDF); after these everytihng is the same

  • @pichit.raetai
    @pichit.raetai 4 года назад +1

    Love this channel

  • @musicacafeinafan1
    @musicacafeinafan1 3 года назад

    Great job ! Very clear . Thank you !

  • @alfonsogarcia5768
    @alfonsogarcia5768 3 года назад

    Great tutorial! Very useful! What changes would you do at the script if instead of Google Docs, the template was Google Slides?

  • @Ma3rcellus
    @Ma3rcellus 2 года назад

    Muito bom vídeo!!!Aprendi muito com esse tutorial. Obrigado!!!!!

  • @mohamedfazlan4074
    @mohamedfazlan4074 3 года назад +1

    Thanks A lot. i Had a Small Issue ... How to Print Multiple Pages in 1 Pdf file? ( Mean Daily Entry as one PDF File or one Company invoices as one Pdf file)

  • @alyahyai
    @alyahyai 4 года назад

    I enjoyed this tutorial, thank you

  • @kicos2188
    @kicos2188 2 года назад

    Amazing! Solves the headache I have to the tee.. Subscribed!!
    Can this handle multiple simultaneous sessions? What happens if more than one form is submitted at the same time? Worried about how temp file is handled and if it will throw an error. Thanks!

    • @ExcelGoogleSheets
      @ExcelGoogleSheets  2 года назад +1

      Assuming you're not going to have hundreds if submission within 5 minutes you should be fine. If you have too many submissions you may run into script execution time limits.

  • @Mikarevival
    @Mikarevival 4 года назад +1

    Great Job!!!

  • @holcimsales3435
    @holcimsales3435 4 года назад +1

    When I run the code , I get this error [20-10-14 06:40:04:855 PDT] TypeError: templateDoc.makeCopy is not a function
    at createPDF(Code:13:34), hope to get your help, thank you so much.

    • @jhone3241
      @jhone3241 4 года назад

      Hi, even I'm getting same error "TypeError: templateDoc.makecopy is not a function (line 12, file "Code")"

    • @salimehaboob
      @salimehaboob 4 года назад

      Same here. I received the same error TypeError: templateDoc.makeCopy is not a function (line 20, file "Code")

    • @stevenlee7524
      @stevenlee7524 4 года назад

      I found this support.google.com/docs/thread/76410582?hl=en What did you end up doing to fix error?

    • @jhone3241
      @jhone3241 4 года назад

      @@stevenlee7524 Couldn't do anything.

    • @stevenlee7524
      @stevenlee7524 4 года назад

      @@jhone3241 I got it to work after looking at his other video ruclips.net/video/r9uU_KwGgzQ/видео.html

  • @ezzyhann
    @ezzyhann 4 года назад +1

    Excellent !

  • @wjpark_11
    @wjpark_11 4 года назад +1

    I really like this one!!!

  • @hemantshinde4857
    @hemantshinde4857 4 года назад +3

    Thank you ver much Sir. I was looking for this for a long time. I don't know the coding, but i still managed to follow the tutorial and create the mail merge as given in the tutorial. One request to you Sir, please also show how to merge the images uploaded through the forms in the doc and finally in pdf. I collect the information of my newly admitted students via google forms in which, I also collect there photos(images). So please provide next part of this tutorial in which there will be solution for merging the images in pdf. With regards.

  • @anirudhvktakkar
    @anirudhvktakkar 3 года назад

    Fantastic! Thanks a lot for this!
    I already followed along with the create bulk PDF docs tutorial, and it worked like a charm! Then came here looking for triggers to make the script run automatically. This looks very very close to what I am looking for.
    However, I have one question.
    The Google Sheet from where I am pulling data into the Google Doc and converting to PDF is not connected to a Google Form. It is actually connected to Piotnet Forms on my WordPress website.
    Will this script run with a formSubmit trigger if it is not connected specifically to a Google Form? If not, can you please suggest a workaround if possible?

  • @nataliariabina3227
    @nataliariabina3227 4 года назад +2

    Thank you , its wonderful !!! Question- when I make the same form "edit response " and submit , it will fill in PDF only edited fields, not edited- will insert as blank , how do I deal with that to make them to pick up old values and fill in new PDF ?

    • @valentinpereira810
      @valentinpereira810 4 года назад

      Hello, did you find a way to fix that ? I will be very grateful to you !

  • @yayodelflow
    @yayodelflow 4 года назад

    This is awesome, congrats... I have a question, do u have a tutorial to do the same, but instead a doc template using a sheet? nos using text, just the range of the sheet. Thank U!

  • @xHao27
    @xHao27 3 года назад

    Thank you for your sharing. It is very helpful for set up the Google form to pdf. Is it possible to use a spreadsheet instead of a document as template? 🤔 Does this replace text functions still work on the spreadsheet?

  • @ali5t4ir
    @ali5t4ir 3 года назад

    Thanks again - I was also wondering if send email trigger can be put in place when a cell is populated manually in google sheets - i.e. when you manually enter a test result in the cell it will trigger to populate the PDF & then it will send an email with attached PDF to the person in the row...much appreciated

  • @mohamed.montaser
    @mohamed.montaser 4 года назад +1

    i have couple of questions:
    1) the " e.namedValues " will get all the data from the form?
    2) can i change the variable "e" to anything else or does it have to be "e"?

    • @ExcelGoogleSheets
      @ExcelGoogleSheets  4 года назад +1

      I think it's event, not element, but it doesn't matter.

  • @iyeate
    @iyeate Месяц назад

    I feel so bad*ss lol. You'RE A GENIUS: MEGA THANKS

  • @rayhutchinson5642
    @rayhutchinson5642 4 года назад +1

    Great video I love the simple step by step detail! Is there a way to add multiple quantities to different items for instance if I had a form where people ordered different types of shirts how could I program it to make a pdf that would capture 3 red and 2 blue shirts?

    • @richardpowell4667
      @richardpowell4667 2 года назад

      I'd imagine you just add the extra columns to your spreadsheet and add the variables to your email.

  • @daleramirez7438
    @daleramirez7438 3 года назад

    Thank you for this video. I learned a lot! I'm just wondering how about the google form requires to submit an image and the image will be used in google docs. I'm currently working with an Application Form that needs photo. Thank you

  • @germanescobar263
    @germanescobar263 4 года назад +1

    Hello, I have checked all code many times but I arrived at the same point , I have the following error, could somebody help me, what's is going on ?
    2:47:44 PM Error
    TypeError: Cannot read property 'namedValues' of undefined
    afterFormSubmit @ Code.gs:3

    • @nomadlivecast9708
      @nomadlivecast9708 4 года назад +1

      Hi ! Awesome tutorial ! same here... any solution ? i've restarted 3 times the tutorial 3 times and still
      TypeError: Cannot read property 'namedValues' of undefined

  • @anupriyamishra2037
    @anupriyamishra2037 4 года назад +2

    Thanks for the tutorial. Please help me knowing that if a respondent is uploading any file that appears in spreadsheet as gdrive link then I want to show that image in the pdf also. What should I do for that. Please reply.

    • @iatulsinha
      @iatulsinha 4 года назад

      I have the same question too.... Were you able to find a solution.. Thanks!

  • @jaleahmad3248
    @jaleahmad3248 3 года назад

    Thanks. Couldn't be easier than this...

  • @Franklin-n4z
    @Franklin-n4z Месяц назад

    How about if you have a multiple choice and checkboxes from google forms? how could I implement it in template document and generate in pdf file?

  • @porkypie1231
    @porkypie1231 2 года назад

    Hi! What should I change in the code if I want to attach two pdfs. The first one being the customized one in the sheets and the other one is a uniform pdf for all?

  • @muhammadahfazy9236
    @muhammadahfazy9236 3 месяца назад

    dude, if i just want make the url link, i can skip the step make pdf with spreadsheet and do de function to insert the url link?