Create a Google Sheets Data Entry Form with Python & Streamlit | Quick & Easy Tutorial

👉 Explore All My Excel Solutions: pythonandvba.com/solutions
𝗗𝗘𝗦𝗖𝗥𝗜𝗣𝗧𝗜𝗢𝗡
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
In this project, I demonstrate how to design a data entry form that integrates seamlessly with Google Sheets using Streamlit and the streamlit-gsheets-connection library.
🌍 𝗟𝗜𝗡𝗞𝗦:
▶ Live demo: vendor-data-entry.streamlit.app/
▶ Source Code: github.com/Sven-Bo/google-she...
▶ Gsheets-connection package: github.com/streamlit/gsheets-...
⭐ 𝗧𝗜𝗠𝗘𝗦𝗧𝗔𝗠𝗣𝗦:
0:00 - Introduction
1:08 - Connect Google Sheets to Streamlit
5:19 - Code out the data entry form
11:00 - Deploy the app
13:32 - Enhance the app with more feature
14:24 -Outro
𝗧𝗢𝗢𝗟𝗦 𝗔𝗡𝗗 𝗥𝗘𝗦𝗢𝗨𝗥𝗖𝗘𝗦
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
🆓【𝗙𝗥𝗘𝗘】Excel Add-in (𝗠𝘆𝗧𝗼𝗼𝗹𝗕𝗲𝗹𝘁): pythonandvba.com/mytoolbelt
📊 Dashboard Excel Add-In (𝗚𝗿𝗮𝗳𝗹𝘆): pythonandvba.com/grafly
🎨 Cartoon Charts Excel Add-In (𝗖𝘂𝘁𝗲𝗣𝗹𝗼𝘁𝘀): pythonandvba.com/cuteplots
🤪 Fun Emoji Excel Add-In (𝗘𝗺𝗼𝗷𝗶𝗳𝘆): pythonandvba.com/emojify
📑 Excel Templates: pythonandvba.com/go/excel-tem...
🎓 My Courses: pythonandvba.com/go/courses
📚 Books, Tools, and More: pythonandvba.com/resources
𝗖𝗢𝗡𝗡𝗘𝗖𝗧 𝗪𝗜𝗧𝗛 𝗠𝗘
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
🔗 LinkedIn: / sven-bosau
📸 Instagram: / codingisfun_official
💻 GitHub: github.com/Sven-Bo
💬 Discord: pythonandvba.com/discord
📬 Contact: pythonandvba.com/contact
☕ 𝗕𝘂𝘆 𝗺𝗲 𝗮 𝗰𝗼𝗳𝗳𝗲𝗲?
If you want to support this channel, you can buy me a coffee here:
▶ pythonandvba.com/coffee-donation

Пікірлер: 108

  • @CodingIsFun
    @CodingIsFun8 ай бұрын

    *Here are the links:* ⤵ Live demo: vendor-data-entry.streamlit.app/ Source Code: github.com/Sven-Bo/google-sheets-data-entry-form-with-streamlit Gsheets-connection package: github.com/streamlit/gsheets-connection

  • @ricardo.alves.campos
    @ricardo.alves.campos7 ай бұрын

    Excellent as always, a second video about login would be awesome!

  • @CodingIsFun

    @CodingIsFun

    7 ай бұрын

    As always, thanks a lot for your comments! I added the login feature on my "videos-to-do-list" ;)

  • @akhilbakki3910
    @akhilbakki39108 ай бұрын

    Thank you for providing the neat demonstration, it helped me very much

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Glad it helped! :)

  • @ildan_haebwa
    @ildan_haebwa7 ай бұрын

    I was having difficulties because an error occurred in streamlit web distribution. I was able to solve the problem by watching the video. Among the streamlit content I am studying, your video is the best. thank you. Please continue to produce good streamlit content.

  • @CodingIsFun

    @CodingIsFun

    7 ай бұрын

    Happy to hear that it was useful; thank you for taking the time to leave a comment and for watching the video! 👍

  • @florianroeseler2404
    @florianroeseler24048 ай бұрын

    That’s very practical, thank you!

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Glad it was helpful, Florian. Thanks for watching and your comments! 👍

  • @luisfernandoperezarmas7198
    @luisfernandoperezarmas71985 ай бұрын

    This video is a treasure. Thank you so much...

  • @CodingIsFun

    @CodingIsFun

    5 ай бұрын

    Glad to hear you liked it! Thank you for commenting and watching. Cheers, Sven ✌️

  • @juanwea223
    @juanwea2235 ай бұрын

    Great video as always. I would like the video about the login to see how you can control which user can see certain info!

  • @CodingIsFun

    @CodingIsFun

    5 ай бұрын

    Thanks for watching. Login (authentication) is already on 'videos-to-do' list! Stay tuned! ✌️

  • @AirFerrari
    @AirFerrari8 ай бұрын

    This was very helpful thank you!

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Glad it was helpful! Thanks for watching and leaving a comment! :)

  • @akokkalis1
    @akokkalis18 ай бұрын

    Again an excellent informative video. Please make a 2nd video alsoa nd include also a login functionality.

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thanks for watching. Glad you liked this one too and your request is well noted! 👍

  • @ipmanbot
    @ipmanbot8 ай бұрын

    thank you, I really enjoyed learning this, please show me other exercises, like login session and others

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thanks for watching and your request is well noted! 👍

  • @GeniusLila
    @GeniusLila8 ай бұрын

    Thank you immensely for this invaluable content! Your effort is truly appreciated. 😊 Could you consider crafting another video demonstrating how to incorporate eye-catching statistics, just like Google does in their forms with pie charts, line graphs, or bar graphs? It'd be amazing to see this in action for data like gender ratios, age distribution, course preferences, and more. I'm curious if Streamlit alone can handle this or if you'd recommend building a separate admin dashboard. Could you share your insights on that process? Can't wait to see what's next! 👍

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thanks for watching and your suggestion! 👍

  • @bolokangmpoma

    @bolokangmpoma

    2 ай бұрын

    @@CodingIsFun As i'm walking on implementing something similar to this, I would want to know if you have done a video on this comment. I'm enjoying this so far

  • @HM-bs4cc
    @HM-bs4cc8 ай бұрын

    Great 👏👏

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thanks! 💖

  • @haninawaya9967
    @haninawaya99677 ай бұрын

    It is really amazing

  • @CodingIsFun

    @CodingIsFun

    7 ай бұрын

    Glad you liked it. Thanks for watching and taking the time to leave a comment! 👍

  • @HendrikYap
    @HendrikYap8 ай бұрын

    Thank you for the lesson. Yeah now we need authentication and also how to let user update their own details.

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thanks for watching. Well noted! 👍

  • @zoneinfo5584
    @zoneinfo55848 ай бұрын

    Superb

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thank you!🤗

  • @jacksonmarube4056
    @jacksonmarube4056Ай бұрын

    Well explained, I would love a tutorial on the security bit

  • @CodingIsFun

    @CodingIsFun

    Ай бұрын

    Thanks for watching. What exactly do you mean? Cheers, Sven ✌️

  • @aminedj430
    @aminedj4306 ай бұрын

    great i will be using this in my next project wish i am working on now i needed a database for my collected info i think i can even add tableau to this.

  • @CodingIsFun

    @CodingIsFun

    6 ай бұрын

    Glad it was helpful and good luck with your project! 🤞

  • @swelanauguste6176
    @swelanauguste61768 ай бұрын

    Thanks for the all the videos. Can you do a streamlit auth video with postgres?

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thank you for watching the videos! I will create another video to add authentication, but I cannot promise to use a PostgreSQL database for that. Nonetheless, the steps/code will be very similar.

  • @zkiyyeller3525
    @zkiyyeller35258 ай бұрын

    I always appreciate your content Sven. You would use this over google forms if the rest of your app is in streamlit correct?

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thank you for watching. I'm happy to hear that you like the content. I think it really depends on your use case. MS Forms is great and works right out of the box. However, if you need more customization options, the combination of Streamlit and Google Sheets could be another solution.

  • @linh-loantran8272
    @linh-loantran82728 ай бұрын

    Thanks very much for the video. Always enjoy and learn so much from your contents. Could you please integrate the authentication to protect this application?

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Happy to hear that you enjoyed this one as well! Yes, in the coming weeks, I will create another video to show how to add the authentication.

  • @nssdesigns
    @nssdesigns5 ай бұрын

    This is super interesting and I can already think of uses for something like this. Do you have any videos on pulling data from spreadsheets Excel or Google Sheets and using that data to fill in online forms... like reverse scraping?

  • @zazzleq6139
    @zazzleq61398 ай бұрын

    Haha 😂 that woman diving into the water was so funny

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    🤿💦

  • @jajwarehouse1
    @jajwarehouse18 ай бұрын

    Does this work if multiple users input data concurrently, or does it overwrite the google sheet with the last update?

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thanks for watching. Multiple users could use it at the same time.

  • @InteligenciadeNegocios
    @InteligenciadeNegocios6 ай бұрын

    Thank you for your help, just a quick question, i am facing the following error: Spreadsheet must be specified

  • @CodingIsFun

    @CodingIsFun

    6 ай бұрын

    Hard to tell from a distance why you are facing an issue

  • @eimdev
    @eimdev6 ай бұрын

    Thanks for the video. Is there any limitation for using the Google API?

  • @CodingIsFun

    @CodingIsFun

    6 ай бұрын

    Thanks for watching. Have a look at the following Google Sheets rate limits: developers.google.com/sheets/api/limits I hope it helps! :)

  • @tritruong1299
    @tritruong12996 ай бұрын

    Love your contents, can you do a project similar but using sharepoint api to update list ?

  • @CodingIsFun

    @CodingIsFun

    6 ай бұрын

    Thanks for watching! I'm happy to hear that you are enjoying my videos, and thank you for your video suggestion. I can't make any promises, but your suggestion is well noted.

  • @franklinajisogun
    @franklinajisogun22 күн бұрын

    Hey, thanks for the video. What color theme are you using on VSCode? Thanks.

  • @CodingIsFun

    @CodingIsFun

    22 күн бұрын

    Thanks for watching. I am using Cobalt3: marketplace.visualstudio.com/items?itemName=alex-pattison.theme-cobalt3 Cheers, Sven ✌️

  • @franklinajisogun

    @franklinajisogun

    21 күн бұрын

    @@CodingIsFun Thanks

  • @asseeltarish7217
    @asseeltarish72176 ай бұрын

    can you please tell me what python and streamlit versions you are using in this video because i am facing a lot of compatibility issues between them and other libraries such as st-gsheets-connection

  • @christophoramorim3147

    @christophoramorim3147

    2 ай бұрын

    Também estou com o mesmo problema, instalei apenas o python e vs code para começar e esta dando erro. Estou usando atualmente o python na versão 3.12.3

  • @gongshow87
    @gongshow878 ай бұрын

    The Login screen would be super helpful, we'd need to keep the created login credentials somewhere else right?

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Well noted! Yes, you would also need to set up a database to store/retrieve/update/delete the credentials.

  • @user-ue8jm2qm9c
    @user-ue8jm2qm9c7 ай бұрын

    can streamlit makes an option to choose time? i want to have a dropdown to select a data (can be from live or just from csv) ie Week over Week (such as last 7 days), or month over month (previous 30 days), or even a quarter (previous 90 days)? seems like i cant find the option to do so, as a dropdown

  • @CodingIsFun

    @CodingIsFun

    7 ай бұрын

    Thank you for watching! Unfortunately, the question you asked is not related to the video content. If you have any questions or need help, I suggest you join my Discord channel at pythonandvba.com/discord . Just make sure to read the forum rules before posting any questions.

  • @mytube1000javed
    @mytube1000javed7 ай бұрын

    Good. But what are benefits or advantages? Instead of entering data directly into gsheet?

  • @CodingIsFun

    @CodingIsFun

    7 ай бұрын

    Thanks for watching. It just an (practical) on how to connect Streamlit with Google Sheets.

  • @uzairsukor9366
    @uzairsukor93663 ай бұрын

    This is great, but I have issue add new submission. It only update the previous submission instead of add in another new row. And is it normal for the slow run?

  • @CodingIsFun

    @CodingIsFun

    3 ай бұрын

    Thank you for watching. Please check out my code: github.com/Sven-Bo/google-sheets-data-entry-form-with-streamlit/blob/main/vendor_app.py You will need to append the new data to your dataframe. I hope it helps! Happy coding! Cheers, Sven ✌️

  • @RedCloudServices
    @RedCloudServices7 ай бұрын

    Does Streamlit connect to postgresql for a CRUD ui?

  • @CodingIsFun

    @CodingIsFun

    7 ай бұрын

    Thanks for watching. Yes, it does. Have a look here: docs.streamlit.io/knowledge-base/tutorials/databases/postgresql

  • @haninawaya9967
    @haninawaya99678 ай бұрын

    First comment 😊

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    🚀🚀🚀

  • @zafiqsyaddiqradzi
    @zafiqsyaddiqradzi7 ай бұрын

    how do you retrieve the data from the spreadsheet to the streamlit?

  • @CodingIsFun

    @CodingIsFun

    7 ай бұрын

    Thanks for watching. Feel free to check out the code I provided on GitHub. Happy Coding!

  • @raphaelwerneck
    @raphaelwerneck2 ай бұрын

    Is it possible to delete a row? I am trying using the st.data_editor but is not working. Ty so much

  • @CodingIsFun

    @CodingIsFun

    2 ай бұрын

    Thanks for watching. Yes, that is possible. Have a look here: github.com/Sven-Bo/google-sheets-data-entry-form-with-streamlit/blob/main/vendor_app.py#L156 Happy Coding! Cheers, Sven ✌️

  • @raphaelwerneck

    @raphaelwerneck

    2 ай бұрын

    @@CodingIsFun ty so much!

  • @ReliableAIBooks
    @ReliableAIBooks4 ай бұрын

    i want to add image upload in this form can u help?

  • @user-ht8hq2ce3j

    @user-ht8hq2ce3j

    4 ай бұрын

    Did you get it working?

  • @uchiha_sasuke_48
    @uchiha_sasuke_488 ай бұрын

    I'm also developed a similar project. But instead of Google sheets, I've used MySQL database. After successfully deploying my streamlit app in Community cloud, my app was not rendering. It was taking at least 15 min to render my web page. Could you please tell me a solution? 😢

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thanks for watching. Hard to tell from a distance. Sorry, that I cannot help!

  • @favourphilicvictor1059

    @favourphilicvictor1059

    8 ай бұрын

    Please let me know when you finally are able to deploy a streamlit app with mysql successfuly. I am having similar challenge

  • @merekissagalyev5994
    @merekissagalyev59948 ай бұрын

    Dear Sven! I am still getting this error when i try to st.dataframe(existing_data) I have done everything what you said in your last video, however still stuck with it. Please help me out

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    The error message would be helpful

  • @merekissagalyev5994

    @merekissagalyev5994

    8 ай бұрын

    @@CodingIsFun I have attached the screenshot on ds

  • @merekissagalyev5994

    @merekissagalyev5994

    8 ай бұрын

    @@CodingIsFun Traceback: ValueError("Spreadsheet must be specified")

  • @musharrafmk4315
    @musharrafmk43157 ай бұрын

    Thanks a lot sir but i m encountering with an error My app is working well when i locally host my app and it is even appending the data in my sheets but when i deploy it i m getting this as error ModuleNotFoundError: This app has encountered an error. The original error message is redacted to prevent data leaks. Full error details have been recorded in the logs (if you're on Streamlit Cloud, click on 'Manage app' in the lower right of your app). Traceback: File "/home/adminuser/venv/lib/python3.9/site-packages/streamlit/runtime/scriptrunner/script_runner.py", line 534, in _run_script exec(code, module.__dict__) File "/mount/src/appointments/appointments.py", line 4, in from streamlit_gsheets import GSheetsConnection

  • @CodingIsFun

    @CodingIsFun

    7 ай бұрын

    Thanks for watching. Have you included in the requirements.txt file in your GitHub repo?

  • @trdais369
    @trdais3694 ай бұрын

    Hello sir, i have the problem when using input worksheet as mine, and the problem is "ValueError: Spreadsheet must be specified" and my error in coding was "existing_data = conn.read(worksheet="Data", usecols=list(range(6)), ttl=5)" Do u know how to fix it? Thanks a lot

  • @CodingIsFun

    @CodingIsFun

    4 ай бұрын

    Thanks for watching. Did you share the technical user email address in Google Sheets as shown in the video? Cheers, Sven ✌️

  • @LitoDev800
    @LitoDev8006 ай бұрын

    Hello, thank you for the video, I get the following errors when deploying my app: streamlit.runtime.caching.storage.cache_storage_protocol.CacheStorageKeyNotFoundError: Key not found in mem cache, & streamlit.runtime.caching.storage.cache_storage_protocol.CacheStorageKeyNotFoundError: Local disk cache storage is disabled (persist=None)

  • @CodingIsFun

    @CodingIsFun

    6 ай бұрын

    Thanks for watching and for your question. Hard to tell from a distance why you are facing an error. Sorry that I cannot help.

  • @sneffetsd
    @sneffetsd8 ай бұрын

    really would like to see how to make authentication with firebase.

  • @CodingIsFun

    @CodingIsFun

    8 ай бұрын

    Thanks for watching and your suggestion! 👍

  • @sma9276
    @sma92762 ай бұрын

    Dear Sir, I cannot create .streamlit folder in my mac. so I got this error "ValueError: Spreadsheet must be specified"

  • @CodingIsFun

    @CodingIsFun

    2 ай бұрын

    Please have a look here: chat.openai.com/share/b587e0d4-aa17-43eb-acd7-ccc7278e98b0 I hope it helps! Happy Coding! Cheers, Sven ✌️

  • @rajchandra6913
    @rajchandra69132 ай бұрын

    Hi I followed all The output scren is showng ValueError: Spreadsheet must be specified

  • @CodingIsFun

    @CodingIsFun

    2 ай бұрын

    Thanks for watching. Did you share your technical email address with the spreadsheet as shown in the video? Cheers, Sven ✌️

  • @rajchandra6913

    @rajchandra6913

    2 ай бұрын

    @@CodingIsFun my bad I wrote the forlder name without ' . ' before streamlit It's working fine now

  • @julmasson6403
    @julmasson64037 ай бұрын

    Dear Sven, thanks a lot for this video, this really helps for a project I need to implement. when following your steps, I got an error when testing the dataframe with st.dataframe(existing_data) at 6min.40 in the video. it returns the error "Spreadsheet must be specified" whereas you explicitly said it was not required. Do you know what I'm doing wrong ? thanks a lot Julien

  • @CameLinis

    @CameLinis

    7 ай бұрын

    Check your secrets.toml if named correctly

  • @CodingIsFun

    @CodingIsFun

    7 ай бұрын

    Hi Julien. Thanks for watching. Kindly double check if you have set up the secrets.toml file correctly.

  • @zollycp5044
    @zollycp50444 ай бұрын

    Hi! i follow your step. but, i found an error while installing gsheets-connection like this note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for pandas Failed to build pandas ERROR: Could not build wheels for pandas, which is required to install pyproject.toml-based projects I've already search on the internet to solve, but its still the same.

  • @CodingIsFun

    @CodingIsFun

    4 ай бұрын

    Thanks for watching and for your question. Hard to tell from a distance why you are facing an error. Sorry that I cannot help.

  • @datadiego
    @datadiego4 ай бұрын

    where is the entry_form file sheet ?

  • @CodingIsFun

    @CodingIsFun

    4 ай бұрын

    Thanks for watching. You can easily create the spreadsheet yourself. I just used it as an example. And since it is private (as shown in the video), you will not have permission to access the sheet. Happy Coding! Cheers, Sven ✌

  • @skabdullahnewaz8232
    @skabdullahnewaz82322 ай бұрын

    Can i share it to whatsapp?

  • @CodingIsFun

    @CodingIsFun

    2 ай бұрын

    I don't know what you mean

  • @historyofislam7509
    @historyofislam7509Ай бұрын

    Auto ML UI

  • @levinoppers8151
    @levinoppers81515 ай бұрын

    data = worksheet.spreadsheet.values_get( AttributeError: 'Worksheet' object has no attribute 'spreadsheet' this the error i get, but this isnt even in my python script, it worked fine before for like a week and now suddenly i get this error.

  • @CodingIsFun

    @CodingIsFun

    5 ай бұрын

    Intersting. When I check my live demo app it still works as expected: vendor-data-entry.streamlit.app/