Create a Button that works in mobile in Google Sheets

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 มิ.ย. 2024
  • In this tip, we will learn how to create a checkbox that acts as a button so we may execute our Google Apps Script functions from the Google Sheets mobile app
    ➤You can find the template from this video in my patreon page, where you´ll also have priority responses to your questions
    practicalsheets.com/patreon
    You can also join my academy practicalsheets.com, where you´ll find, not only the templates for this and all the videos, but also Google Sheets Courses, technical service, and more
    ➤You can also subscribe to the channel where you´ll find a new Sheets video every week.
    Here are some of the places where you can follow and support me:
    ➤Patreon: practicalsheets.com/patreon
    ➤Webpage: practicalsheets.com
    ➤Newsletter: practicalsheets.com/newsletter
    ➤Telegram: practicalsheets.com/telegram
    ➤Facebook: practicalsheets.com/facebook
    ➤Twitter: practicalsheets.com/twitter
    Any suggestion, question or insights, feel free to comment below

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

  • @jman2150
    @jman2150 2 หลายเดือนก่อน +4

    I feel like it's rare that I am trying to do something and I find the exact solution spelled out exactly how I wanted it to work. Thanks!!

    • @practicalsheets
      @practicalsheets  2 หลายเดือนก่อน +1

      What a kind comment. Thank you so much!

  • @user-ic3oj8hj2b
    @user-ic3oj8hj2b 11 หลายเดือนก่อน +3

    My god I've been searching for this fo soooo long. It works perfectly well on my phone, and will help all of my coworkers. Thank you so much for sharing this !!!

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

    Useful to know that there is a relatively simple workaround.
    Thanks.

  • @crg705
    @crg705 6 หลายเดือนก่อน

    Brilliant - just what I needed - thank you

  • @namta6696
    @namta6696 6 หลายเดือนก่อน

    It's very helpful. Thank you very much.

  • @user-xh6qb3rb5y
    @user-xh6qb3rb5y 5 หลายเดือนก่อน

    Lovely solution, and very easy-to-follow tutorial. Thank you! :D

  • @aaronbitton9310
    @aaronbitton9310 11 หลายเดือนก่อน +1

    That was incredible! Thank you!

    • @practicalsheets
      @practicalsheets  10 หลายเดือนก่อน

      Thank you for commenting!

  • @christophe4604
    @christophe4604 ปีที่แล้ว

    That's perfect, thanks a lot !

  • @andrewsworkshop
    @andrewsworkshop 6 หลายเดือนก่อน

    Thank you so much! This worked for me. :)

  • @SilverPazuzu
    @SilverPazuzu 6 หลายเดือนก่อน

    Amazing, this helped me a lot! :)

  • @katherineberger3130
    @katherineberger3130 ปีที่แล้ว

    Thank you so much! This is exactly what I was looking for :)

  • @finnigan16
    @finnigan16 10 หลายเดือนก่อน +1

    Very helpful. Thank you!

  • @marcelomasaveuinfante2482
    @marcelomasaveuinfante2482 5 หลายเดือนก่อน

    This has been SO helpfull !! Thank you so much for the video
    NEW SUB !

  • @user-wm8zr4cn3n
    @user-wm8zr4cn3n 4 หลายเดือนก่อน +1

    Thank you so much! Excelent information and explanation. Many thanks...

  • @vamsikrishna-zt1cy
    @vamsikrishna-zt1cy หลายเดือนก่อน +1

    Great one, super helpful. I tried to make the button work in mobile but met a dead end. Amazing bro🎉

    • @practicalsheets
      @practicalsheets  หลายเดือนก่อน

      Thank you!
      Any specific error?

    • @janr.9343
      @janr.9343 หลายเดือนก่อน

      You cannot trigger the event via the button on a mobile device! That is why he proposed the workaround with the onEdit(e) function which works perfectly.

  • @maurobatti
    @maurobatti 11 หลายเดือนก่อน

    Thanks, great idea

  • @so_slow
    @so_slow 7 หลายเดือนก่อน +1

    thank you so much this works so well!

    • @practicalsheets
      @practicalsheets  6 หลายเดือนก่อน

      Thank you for commenting!
      Regards!

  • @MrEcoMen
    @MrEcoMen 3 หลายเดือนก่อน +1

    Simple and fantastic. Thank you

    • @practicalsheets
      @practicalsheets  3 หลายเดือนก่อน

      Thank you so much!
      Regards!

  • @brearddominique64400
    @brearddominique64400 ปีที่แล้ว

    Very interesting. Thanks

  • @nimconrod
    @nimconrod 3 หลายเดือนก่อน +1

    Very clever workaround, thank you

  • @user-tu4rr1ed9v
    @user-tu4rr1ed9v 4 หลายเดือนก่อน +1

    Very usefull, thx. Is it possible to use this way for more check boxes and every check box should counting different cell?

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

    That was amazing!! 😍

  • @BraveHeart-ht8zf
    @BraveHeart-ht8zf ปีที่แล้ว

    this Tutorial is useful

  • @air961
    @air961 9 หลายเดือนก่อน

    Thanks!

  • @joseluisdelgadoalvan2058
    @joseluisdelgadoalvan2058 2 หลายเดือนก่อน +1

    Gracias, me sacaste de un apuro,....

  • @sbarbee1979
    @sbarbee1979 10 หลายเดือนก่อน +2

    This video was great and easy to follow along. Much appreciated actually talking through the meaning of the commands used also!
    This seems like the ideal fix for my situation , but I was unable to get it to work in the last step (with the checkbox). My script runs within the basic onEdit function, but when I try to tie it to the specific trigger, it no longer executes (nothing happens). I've compared my code to the video's 5-6 times and don't see any differences. Thoughts?

    • @practicalsheets
      @practicalsheets  10 หลายเดือนก่อน +1

      Please let me see your code to see if we can find the mistake
      Regards!

  • @puthdarakim1175
    @puthdarakim1175 ปีที่แล้ว

    Very good,

  • @26shayankhan
    @26shayankhan 2 หลายเดือนก่อน

    Thanks a lot

  • @tntori5079
    @tntori5079 6 หลายเดือนก่อน

    Fantastic video! I was able to get it to work great on my computer (browser) but alas it's not working on my phone or tablet. Any thoughts? I did swap counter for my own function but it worked on PC no issue there. And if I hit "run" from the scripts page it also worked. 0.o

  • @abuomardontadd2865
    @abuomardontadd2865 5 หลายเดือนก่อน

    thanks if i want to create more buttons which work on mobile what i should do

  • @puthdarakim1175
    @puthdarakim1175 ปีที่แล้ว

    Could you help to use checked box on mobile to move / copy many rows to another sheet

  • @mpatey84
    @mpatey84 9 หลายเดือนก่อน +1

    Thanks for this, I have attempted to utilize this in my script but I have not had any luck getting it to work. I am fairly new to the scripting and I am not sure how to go about troubleshooting, I have copied your script exactly other than the counter. any recommendations would be great.

    • @practicalsheets
      @practicalsheets  8 หลายเดือนก่อน

      Hello!
      Were you able to solve it?
      Regards!

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

    Thanks! How will it be implemented if there are several buttons and correspondingly several scripts (functions) in the table?

    • @racchittt
      @racchittt 11 หลายเดือนก่อน

      same question

    • @jonnybolton4659
      @jonnybolton4659 10 หลายเดือนก่อน

      You probably need an else if for every other button, where you check if a different combination of sheet name/cell is active, and then you run a different function inside the else if

  • @iamcurios
    @iamcurios 23 วันที่ผ่านมา +1

    Dear sir the check box u explained became a tick box and using that I did bit by bit the same, bt it's not at all working on mobile.
    Is there a change I need to do?

    • @practicalsheets
      @practicalsheets  22 วันที่ผ่านมา

      If you want, you could share the code
      Kind Regards

  • @111bobgato
    @111bobgato 3 หลายเดือนก่อน +1

    I was able to apply your workaround (thanks). But in my case I have multiple cells throughout my spreadsheet that I would like to increment on demand by clicking on a single checkbox (cell B4 in your example). When B4 is checked, rather than adding 1 to cell B2 (in your example), I want the logic to increment the one cell that had focus right before I clicked on the checkbox in cell B4. Do you know of a way to do that? Thanks again

    • @practicalsheets
      @practicalsheets  2 หลายเดือนก่อน

      Mmmm
      Very interesting
      I´m not sure how to do it
      There is a trigger onSelectionChange
      Maybe we could try that but it may make the sheet really "heavy"
      Kind Regards

  • @janssensidehustle
    @janssensidehustle 4 หลายเดือนก่อน

    can you add link so we can copy your script, taht would be very helpfull. thanks

  • @jonnybolton4659
    @jonnybolton4659 10 หลายเดือนก่อน

    Hi, thanks for this tutorial it's very helpful, I managed to copy it so that my counter function worked on my tablet, however when I replace counter with my own function in the script, it no longer runs... but that function works fine when placed in a button or as a keyboard shortcut.
    Can you think of any limitations on why the onEdit function won't run another function? Would it help if I shared the code for that function with you?

    • @jonnybolton4659
      @jonnybolton4659 10 หลายเดือนก่อน

      Ahh, I think it's because my function imports data from another file - looks like onEdit cannot access other files? Is there a workaround?

    • @rafaelantoniocamaranhernan2445
      @rafaelantoniocamaranhernan2445 10 หลายเดือนก่อน

      @@jonnybolton4659 Hi, I was experiencing the same issue. I had the exact same code as the video but when I wrote my own function it didn't work. I had my cell A1 notation written between single quotation marks like this 'I4', I was so frustrated that just to try I changed them for double quotation marks because I used those in my own function and it worked that way.
      So my advice is that you check that you are using the same quotation marks (either single or double) in both your original function and your onEdit one.
      I really hope you manage to make it work. Good luck

    • @jonnybolton4659
      @jonnybolton4659 10 หลายเดือนก่อน +1

      Thanks. That wasn't the issue though it was because my function was trying to access other files in the Drive. The onEdit trigger doesn't allow this to happen but you can do this with "Installable triggers", I spent all afternoon going down that rabbit hole!

    • @practicalsheets
      @practicalsheets  10 หลายเดือนก่อน +1

      Hello!
      I´m glad you figured it out on your own, and apollogies for not getting back earlier.
      You are right
      There are 2 kinds of triggers in GAS: manual and installable
      manual are the functions you write such as onEdit or onOpen
      These are great because they remain in the file if you make any copies
      However their big limitation is that they cannot connect to services (They can not send an email, creat an event, or connect to another spreadsheet)
      This is when the second type of triggers come by. These are called installable triggers. As its name suggests, you need to install them on the "Triggers" menu in your GAS Editor. When you install them or create them they will sak for the permission, thus you won´t need it again
      The bad part is that they only exist on that file, that means that if you ever do a copy you need to be careful because the triggers will be erased and you need to create them again
      Hope I shed an additional light
      Regards!

    • @jonnybolton4659
      @jonnybolton4659 10 หลายเดือนก่อน

      @@practicalsheets thanks so much! One thing I did notice was when running the sheet in two different accounts, it always accessed the _owners_ files and not the _users_ do you know of a simple fix for this?

  • @janaklabalova1743
    @janaklabalova1743 2 หลายเดือนก่อน +1

    Hello, if I want for each row function chech box, could you please help me,how to do it? Thank you very much

    • @practicalsheets
      @practicalsheets  2 หลายเดือนก่อน

      Creating the checkboxes is not difficult. The question is what function do you want to execute with each box
      Kind Regards

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

    How can I add multiple buttons to the same sheet like this? I've tried but something is interfering to where the last one in the script code is the only one that's actually functioning.

    • @jonnybolton4659
      @jonnybolton4659 10 หลายเดือนก่อน

      You probably need an else if for every other button, where you check if a different combination of sheet name/cell is active, and then you run a different function inside the else if

  • @LukasMossum
    @LukasMossum 3 หลายเดือนก่อน +1

    I only get one script to work at a time, I have no clue to why this happens. I want to have several different buttons that clear different seachbars/ranges. and hope to have a on edit timestamp as well. Do you have any idea to why only one of my functions is functional by any chance? Or where I can find out?

    • @practicalsheets
      @practicalsheets  2 หลายเดือนก่อน

      Hello!
      You should have only one onEdit
      And them imside this onEdit you may include all of the functions you want to execute
      Regards!

  • @user-cc9eo9zk1n
    @user-cc9eo9zk1n ปีที่แล้ว

    Can you create a video of how to use this button with your video “WORKOUT LOGGER GOOGLE SHEET”

  • @LostOrStolen
    @LostOrStolen 3 วันที่ผ่านมา +1

    What about a confirmation dialog or popup on mobile? Does that work?

    • @practicalsheets
      @practicalsheets  3 วันที่ผ่านมา

      Unfortunately no
      Regards!

    • @LostOrStolen
      @LostOrStolen 3 วันที่ผ่านมา +1

      @@practicalsheets Thank you. It does work using Desktop mode, but it's super cumbersome.

    • @practicalsheets
      @practicalsheets  วันที่ผ่านมา

      @@LostOrStolen You are right. It's horrible!

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

    Thank you so much for your video. It didnt work for me. I'm not sure why. My desktop buttons work but I cannot get the script to work for the edit you made. Any thoughts? I would love to share with you the code I am using. I cannot find any information on how to get it to work any where else. Your video was the closest thing I've found.

    • @practicalsheets
      @practicalsheets  11 หลายเดือนก่อน

      Did you manage?
      Regards!

    • @jonnybolton4659
      @jonnybolton4659 10 หลายเดือนก่อน +2

      I also have the same issue, the checkbox worked with the counter function, but then when I use my own function it doesn't work, even though the button (and keyboard shortcut) both work

    • @jeanaimegakwerere8591
      @jeanaimegakwerere8591 9 หลายเดือนก่อน

      Did you get an answer for that?

    • @jonnybolton4659
      @jonnybolton4659 9 หลายเดือนก่อน

      @@jeanaimegakwerere8591 yeah. See my other comment

  • @gilmargilmar865
    @gilmargilmar865 7 หลายเดือนก่อน +1

    Procuro algo assim para menu de navegação. Alguém já desenvolveu algo ?.

    • @practicalsheets
      @practicalsheets  6 หลายเดือนก่อน +1

      I don´t think it is possible to do a menu in Mobile, but I may be wrong
      Regards!

  • @harunyldz5763
    @harunyldz5763 10 หลายเดือนก่อน +1

    How about a function that access another file in drive? This code doesn’t work for me.

    • @practicalsheets
      @practicalsheets  10 หลายเดือนก่อน

      For this type of function you need to have an "installable" trigger
      onEdit wont work because it needs to acces the Spreadsheet service
      These are the steps
      1. Change the name of onEdit function to any name you want, for example
      function thingsToDoOnEdit(){}
      2. In the GAS Editor, at your left go to "Triggers" (A clock icon)
      3. CLick the "Add trigger" button
      4. Choose your function
      5. On "type of event" choose "On edit"
      6. Click save
      7. enjoy
      Let me know if it works
      Regards!

  • @SuportoVc
    @SuportoVc วันที่ผ่านมา +1

    +1 sub

  • @User-0101hsh
    @User-0101hsh 10 หลายเดือนก่อน +1

    In mobile, custom dialog is still not showing up, is there a solution for that?

    • @practicalsheets
      @practicalsheets  10 หลายเดือนก่อน

      As far as I know, custom dialogs won´t work in mobile
      Regards!

  • @AllinOne-ze8ku
    @AllinOne-ze8ku 7 หลายเดือนก่อน +1

    I need a help.can you please help me?

    • @practicalsheets
      @practicalsheets  6 หลายเดือนก่อน

      OF course. LEt me know your problem
      Regards!

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

    I basically used the same code used here: th-cam.com/video/ZKYvrD-3Ksc/w-d-xo.html

    • @practicalsheets
      @practicalsheets  11 หลายเดือนก่อน

      You solved it with that?

  • @alicenigl5862
    @alicenigl5862 2 หลายเดือนก่อน +1

    I don't know what is wrong with this. Within the App Scripts It works. BUT when I click on the button nothing happens. Made just the first function is working?

    • @practicalsheets
      @practicalsheets  2 หลายเดือนก่อน

      Double check that you included the exact name of the function without parenthesis in your button
      Kind Regards

    • @alicenigl5862
      @alicenigl5862 2 หลายเดือนก่อน

      @@practicalsheets REALLY very grateful for your help and knowledge. Here's what I have If copies and pastes to last row and then clears the data.
      function NRunCheckBox() {

      const ss = SpreadsheetApp.getActiveSpreadsheet();
      //Collect the Players
      const sourceSheet = ss.getSheetByName("Game");
      const sourceRange = sourceSheet.getRange ('B2:I2');
      const sourceVals = sourceRange.getValues().flat();
      const sourceSheet2 = ss.getSheetByName("Game");
      const sourceRange2 = sourceSheet2.getRange ('B12:I12');
      const sourceVals2 = sourceRange2.getValues().flat();//added
      // Append the data
      const destinationSheet = ss.getSheetByName("History");
      destinationSheet.appendRow(sourceVals);
      const destinationSheet2 = ss.getSheetByName("History");
      destinationSheet2.appendRow(sourceVals2);
      var spreadsheet = SpreadsheetApp.getActive();
      spreadsheet.getRange('B2:I11').activate();
      spreadsheet.setCurrentCell(spreadsheet.getRange('I11'));
      spreadsheet.getActiveRangeList().clear({contentsOnly: true, skipFilteredRows: true});
      };
      function onEdit () {
      let activeCell = SpreadsheetApp.getActiveSpreadsheet ().getActiveCell()
      let reference = activeCell.getA1Notation()
      let sheetName = activeCell.getSheet().getName()
      let activeValue = activeCell.getValue()
      if (reference == "D20" && sheetName == "Game" && activeValue
      == true) {
      NRunCheckBox() ;
      activeCell. setValue(false);
      }
      }

    • @alicenigl5862
      @alicenigl5862 2 หลายเดือนก่อน +1

      @@practicalsheets I found something interesting. So the script works with the button but not the checkbox. The checkbox is actually executing the previous script I had. Even though I gave the button a different name and am using the same name as the button in the onedit statement.

    • @alicenigl5862
      @alicenigl5862 2 หลายเดือนก่อน

      I GOT IT WORKING!! Yay thank you again. I had saved it as a macro and that was the problem. Changed it to a script. Now all I need is to get the date to append to the data range line.

    • @practicalsheets
      @practicalsheets  2 หลายเดือนก่อน

      @@alicenigl5862 Hello!
      Do you by any chance have 2 onedits?
      Regards!

  • @pramodmaratha5519
    @pramodmaratha5519 4 หลายเดือนก่อน +1

    Hi
    I have used app script for buttons...which can be used for operations from google sheet app in android mobiles.
    but I came to conclusion that unless we keep open that sheet in web version in any browser any app script doesn't run...
    that mean app script needs at least one web view login through any browser to be in function....

    • @practicalsheets
      @practicalsheets  8 วันที่ผ่านมา +1

      Hello!
      Nice comment!
      As a rule of thumb, I try to avoid Google Sheets in cell phone, and prefer to use AppSheet or build a webapp
      Kind Regards