Conditionally Insert Checkboxes
5:28
Sort Sheets
14:55
10 ай бұрын
Sort Range When New Data Entered
9:30
Highlight Cell vs Row
3:42
Жыл бұрын
VLOOKUP() Compilation
4:52
2 жыл бұрын
A Sad Day (last video)
1:39
2 жыл бұрын
Using JOIN() in QUERY()
8:42
2 жыл бұрын
Add a Datestamp on Bulk Paste
7:56
2 жыл бұрын
2-Way Sync: No Unique ID
10:57
3 жыл бұрын
2-way Sync: Non-row ID
10:03
3 жыл бұрын
2-Way Sync: Row-aligned ID
11:21
3 жыл бұрын
Custom Functions - Get Sheet Names
11:44
Move All Checked Rows
12:11
3 жыл бұрын
Пікірлер
@__-...CL...-__
@__-...CL...-__ 20 минут бұрын
Is there a way to connect a server calculator sheet to a client one with only importrange ? The question is: if the user wants to customize some values (inser own variable values for example), is there a way to not to collect in the server spread the users live datas changes that are calculated in server? The server: has the calculation logics and formulas that sends result to the client. The server also has the inputed users datas to manage calculation but i don't wanna collect that....if i want to give to a customer that client spread I would that the client insert own values, receive realtime calculation from server without sending to the server that datas.... But only get back the formula string to apply it in the client spread...
@UltraCayde
@UltraCayde 2 күн бұрын
hey think i could have some help with this please ?
@phoenixarzuljin2578
@phoenixarzuljin2578 9 күн бұрын
i want to increment/decrement F by E on 40 different row. i've tried some things but i cant get it to work, i'm pretty sure i can do with less coding than 2 button for each row. i dont mind if every row increment at the same time if i can reset all E row to 0. to make it more concrete, i want to have an initiative sheet for dnd, and on this sheet i want a column with damage/healing received as value (E), a second column beeing the cumulative damage (F), after its easy i have a total hp column (G) and a dead or alive/remaining hp (H) which use a if/else function. i can get the script to work on a button, for each row, but since i have to draw the button for each and its making different size button my ocd are cranking it up XD (if you could help thanks)
@stephenamspokerzeus3416
@stephenamspokerzeus3416 11 күн бұрын
Is there a way to add an auto time and date in the first row when it moves??
@miketheleisureman2334
@miketheleisureman2334 12 күн бұрын
I love it thank you so much !!
@DebbieVerras-e8e
@DebbieVerras-e8e 13 күн бұрын
Hi Spencer, back again but different problem same concept. I have a workbook that has a status in column AH. There is a total of 11 status values but only 2 worksheets. I took from this your script and amended where I thought it needed to be but they doesn't seem to be working? function onEdit(e){ let r = e.range; if (r.columnStart != 34 || r.rowStart == 1 || e.value == null) return; const sh = SpreadsheetApp.getActive(); const valArray = ["ADOPTED","ADOPTED_$","CFM:PAID NOTICE","AVAILABLE","NOT AVAIL","DECEASED","BAD DEBT","PERM FOSTER","TO BE RETURNED","PALLIATIVE","FINALISED"]; const destArray = ["In_Care","In_Care","In_Care","In_Care","In_Care","Finalised","In_Care","In_Care","In_Care","In_Care","Finalised"]; let dest = sh.getSheetByName(destArray[valArray.indexOf(e.value)]); let src = sh.getActiveSheet(); if (dest.getName() == src.getName()) return; src.getRange(r.rowStart,1,1,34).moveTo(dest.getRange(dest.getLastRow()+1,1,1,34)); src.deleteRow(r.rowStart); The 'In_Care' sheet is the main sheet and I only want to move the row if the status changes to FINALISED or DECEASED to the 'Finalised' sheet. Can you see what I am doing wrong?
@debbieverras8645
@debbieverras8645 13 күн бұрын
Spencer....edit I had the column wrong it was AL (col 35) changed that but didn't make a difference. Does it matter that the first row of the data is '3' not '1'?😊
@joannacristine
@joannacristine 16 күн бұрын
it has the lock icon. but editors can still edit on the sheet. it is not locked. even if i change the permission on the original file to "you only", it gives all the editors edit permission on the copy.
@joannacristine
@joannacristine 16 күн бұрын
it's not working
@stephanieangulo8537
@stephanieangulo8537 17 күн бұрын
Hi Spencer, I'm not sure what I'm doing wrong.. This is the formula I pasted in AppScript function onEdit(e){ if (e.range.columnSmart !=6 || e.value != "TRUE") return; SpreadsheetApp.getActiveSheet().hideRows(e.range.rowStart); } The column with my checkboxes is F I saved it but when I check off a box on my google sheet it doesn't hide it. Is there something I'm missing? I'm very green when it comes to coding and AppScript TY
@laalmonn
@laalmonn 21 күн бұрын
You're the boss
@SpencerFarris
@SpencerFarris 20 күн бұрын
tysm
@aqeelrazahyder6212
@aqeelrazahyder6212 21 күн бұрын
One thing missing, if the value changes from original, then we have to remove the Check boxes, how would we do that
@SpencerFarris
@SpencerFarris 20 күн бұрын
I guess you could do function onEdit(e){ if (!e) throw "Do not run from Editor"; insertFollowupCheckbox(e); } function insertFollowupCheckbox(e){ const r = e.range; if (r.columnStart != 2 || e.value > 3) r.offset(0,1).removeCheckboxes(); else r.offset(0,1).insertCheckboxes(); }
@akingi1984
@akingi1984 22 күн бұрын
thanks, exactly what i needed. now after a sheet has been copied with protections, how do i rename the copied sheet to something other than the number given?
@SpencerFarris
@SpencerFarris 21 күн бұрын
@@akingi1984 just rename it in the script if that's an option. The name is given in the "let nSheet" line
@vaibhavrane7583
@vaibhavrane7583 26 күн бұрын
Hi, I tried the solution it only works if I manually click the checkbox. I wanted to implement an IF Function on other rows such that if I checked one box it should give TRUE/FALSE on other rows as well. in turn I wanted to create a select and deselect kind of funtion on my google sheet. But it does not work over there. Kindly help here.
@SpencerFarris
@SpencerFarris 26 күн бұрын
Yes, onEdit functions only work based on manual edits
@QuynhTranNhat-o7l
@QuynhTranNhat-o7l 27 күн бұрын
Hi, can we use this for duplicate sheet ?
@SpencerFarris
@SpencerFarris 27 күн бұрын
The protections only copy if you use the script to copy the sheet; using the File > Duplicate option doesn't run the script
@chrisst9958
@chrisst9958 27 күн бұрын
How do I deploy this step by step on my google sheet? Is it through Tools>AppScript?
@SpencerFarris
@SpencerFarris 23 күн бұрын
Extensions > Apps Script, yes
@junesqueek
@junesqueek Ай бұрын
it worked, thank you! if i only wanted it to work within one sheet though, how would i do that? i have sheet1 and sheet2 but i only want the script to apply to sheet1 and not sheet2.
@SpencerFarris
@SpencerFarris Ай бұрын
I add the sheet name to the initial IF statement
@MusicKidsGualandri
@MusicKidsGualandri Ай бұрын
This is very useful, thanks! Is there a way to run the update that doesn’t blank out the screen and the data in it for that brief second or two?
@SpencerFarris
@SpencerFarris Ай бұрын
No. The data exists there once independently which makes the formula fail, then the formula comes back after the value is deleted
@markonakic8870
@markonakic8870 Ай бұрын
Hi Spencer, very well explained and detailed instructions, thank you very much! Google sheets don't have option to input special characters, I was wondering about a script for find and replace. My idea is to have "gl_a" as abbreviation for alfa, which is CHAR(945), but have no idea how to make that work, any help is highly appreciated!
@SpencerFarris
@SpencerFarris 23 күн бұрын
Sorry... I don't exactly understand what you're going for
@yaelsagi1402
@yaelsagi1402 Ай бұрын
This is amazing and also way over my head so I hope you can help me in modifying it :) If I wish to create a new sheet but only with 1 variable, how should I do that? I created a Bio sheet and a Template sheet. I wish that whenever I add a new member's name into the Bio sheet, it triggers a new sheet (a duplication of the template sheet) with this memeber's name. How do I do that? Thank you!
@SpencerFarris
@SpencerFarris 23 күн бұрын
Hi, are you still having issues with the setup?
@joaohmore
@joaohmore Ай бұрын
What a great video! I was wondering if a can create recurring events to be displayed in Google Sheets. I created a interactive calendar on google sheets but couldnt find a way to create recurring events to link to this calendar besides listing all the events or input manually this info
@SpencerFarris
@SpencerFarris Ай бұрын
In scripting it's called an Event Series developers.google.com/apps-script/reference/calendar/calendar-app#createEventSeries(String,Date,Date,EventRecurrence)
@AliciaMessinger
@AliciaMessinger Ай бұрын
Thank you, this is so helpful!
@SpencerFarris
@SpencerFarris 23 күн бұрын
I'm so glad!
@spikescustomworx8845
@spikescustomworx8845 Ай бұрын
Hello, im trying to get this to get this to work but not having any succes, i copied and pasted the text into the script box
@SpencerFarris
@SpencerFarris Ай бұрын
After saving it should just /work/
@evergreentravelsvizag
@evergreentravelsvizag Ай бұрын
absolutely amazing. can i use this in single spread sheet on multiple sheets. Example. Spreadsheet1 has 2 sheets sheeta and sheetb sheeta i want to lock row after i edit the 10th column sheetb I want to lock row after i edit the 20th column how do i differentitate
@SpencerFarris
@SpencerFarris Ай бұрын
Sure, you would just put an IF for the sheet name and then an IF within for the column
@evergreentravelsvizag
@evergreentravelsvizag Ай бұрын
@@SpencerFarris Thank you for the swift response. I'm not that good with coding can you just give me the code. I will edit the sheet names and column numbers.
@SpencerFarris
@SpencerFarris Ай бұрын
@@evergreentravelsvizag function ____(){ const sheet = e.source.getActiveSheet(); const r = e.range; if (sheet.getName() == "sheeta" && r.columnStart != 10 || sheet.getName() == "sheetb" && r.columnStart != 20) return; ... ... }
@imitiazuddinmohammed484
@imitiazuddinmohammed484 Ай бұрын
@@SpencerFarris function lockRow(e){ const sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const r = e.range; if (sheet.getName() == "Logs" && r.columnStart != 44 || sheet.getName() == "Serial" && r.columnStart != 8) return; let protection = sh.getRange(e.range.rowStart,1,1,sh.getMaxColumns()).protect(); protection.removeEditors(protection.getEditors()); if (protection.canDomainEdit()) { protection.setDomainEdit(false); } } using this code and checked in executions the code is failing
@JorneRichard
@JorneRichard Ай бұрын
Super useful!!!
@SpencerFarris
@SpencerFarris Ай бұрын
Thanks!
@HoshiHikari
@HoshiHikari Ай бұрын
How do I run this in the copy I made? It's telling me I need Authorization and to verify some app, but I don't know what app.
@SpencerFarris
@SpencerFarris Ай бұрын
It's asking for authorization / verification of the script. The script runs as you, or the triggering user, so it's just asking you to say "yes, I authorize you to run as me"
@SDLFrontDesk
@SDLFrontDesk 2 ай бұрын
@SpencerFarris I hope you see this. Is there a way to contact you? I'm trying to do this, for the first time for my company and very much need help. I found the script app to copy and paste the script into, but I'm not sure how to make it work on the actual Google sheet. I'd very much like to gain your support!
@SpencerFarris
@SpencerFarris Ай бұрын
@nikkim3212
@nikkim3212 2 ай бұрын
What do I need to change to execute this across all the sheets in a workbook?
@SpencerFarris
@SpencerFarris Ай бұрын
Get rid of src.getName() != "Checkbox" in the IF statement
@juliol.7081
@juliol.7081 2 ай бұрын
Hello, great video, friend. Thank you. I want to ask if there is any chance of inserting and extracting rich text from within the Google Sheet? For example, I did a CRUD project, where I render the HTML separately. In this project, the admin user can insert data so that other users can view this data in another HTML interface. However, when the admin inserts a link or something styled like bold or italic, this will be saved to the Google Sheet but without the link or bold or italic. And when another user searches for this subject, the link does not appear, nor do other styles that were inserted in the HTML text box through the admin interface. Would it be possible to make the Google Script send and bring styled texts from a Google Sheet? Thank you for the help
@SpencerFarris
@SpencerFarris 23 күн бұрын
Most likely, so long as that data is stored or accessible somewhere
@fzavala
@fzavala 2 ай бұрын
Hello! The script is running fine! But what if I want it to look only at the last row from column A to paste the data? I have in other columns more stuff and its writing the script on the very last row from all cells. What can I do? Thank you!!
@SpencerFarris
@SpencerFarris Ай бұрын
I know there are other ways, but here's one kzbin.info/www/bejne/q5_IZoKlobCmjqs
@fzavala
@fzavala Ай бұрын
@@SpencerFarris Thank you!!
@PhaciousBalole-e8e
@PhaciousBalole-e8e 2 ай бұрын
Good 👍
@amparandecordesign8348
@amparandecordesign8348 2 ай бұрын
Hello, I am using this to keep track of deliveries. I have 3 locations and start filtering date from Row 10, Colum A. I want everything to move when "Delivered" is selected... How would this formula look? I am not a computer person, I need help!
@SpencerFarris
@SpencerFarris Ай бұрын
Have you tried modifying the script at all? Everything you need should be there with some use-case modifications.
@HOW_TO_369
@HOW_TO_369 2 ай бұрын
I made a video to explain it my way. kzbin.info/www/bejne/aHzdmZ2amMqqh8U
@HOW_TO_369
@HOW_TO_369 2 ай бұрын
Just click on extentions then app scripts then delete everything then copy and paste script below. BUT! this script is programmed to have the checkboxes in column A. So if you have your checkboxes in column C, then change the 1 to 3. If your checkboxes are in column F then change 1 to a 6. function onEdit(e){ if (e.range.columnStart != 1 || e.value != "TRUE") return; SpreadsheetApp.getActiveSheet().hideRows(e.range.rowStart); }
@HOW_TO_369
@HOW_TO_369 2 ай бұрын
script if your checkboxes are in column B function onEdit(e){ if (e.range.columnStart != 2 || e.value != "TRUE") return; SpreadsheetApp.getActiveSheet().hideRows(e.range.rowStart); }
@aidenstephenson104
@aidenstephenson104 2 ай бұрын
Hey spencer I'm trying to do the same concept apart from I'm trying to lock a column 24 hours after editing it. tried to change the script to do this but im stuck, can you please help
@SpencerFarris
@SpencerFarris Ай бұрын
@bob.bobman
@bob.bobman 2 ай бұрын
I thought you said the date wouldn't go away if you unchecked the box but it appears you were able to clear it by unchecking the box.
@SpencerFarris
@SpencerFarris Ай бұрын
Do you have a timestamp?
@bob.bobman
@bob.bobman 2 ай бұрын
Can you lock specific cells? If a specific cell changes to a trigger value it automatically locks and can only be changed again by the sheet owner? I need the script to look at specific columns and any cell in those columns that get changed to "PAID" get locked not the entire row or column.
@SpencerFarris
@SpencerFarris Ай бұрын
Sure, just combine the logic with my other video about locking on edit
@AaronLiberty
@AaronLiberty 2 ай бұрын
Hi, I have a sheet with more than just 3 columns. Would I just edit src.getRange(r.rowStart,1,1,3).moveTo(dest.getRange(dest.getLastRow()+1,1,1,3)); to something like src.getRange(r.rowStart,1,1,11).moveTo(dest.getRange(dest.getLastRow()+1,1,1,11)); if I have 11 columns?
@SpencerFarris
@SpencerFarris Ай бұрын
Yes!
@AilsaSadowski-dy5be
@AilsaSadowski-dy5be 2 ай бұрын
0:57 0:58 374641579 9
@daudkhan7458
@daudkhan7458 2 ай бұрын
Hii sir
@SpencerFarris
@SpencerFarris Ай бұрын
hello
@MystixBlack
@MystixBlack 2 ай бұрын
this is kinda exactly what i needed but missing the important part, i want those 2 buttons but they shoudnt only work on the A2 Box, it should increase or decrease the box i highlighted/clicked before. how would i do that?
@MystixBlack
@MystixBlack 2 ай бұрын
ah found it^^ its sheet.getActiveCell() works perfekt^^ thanks for the vid
@SpencerFarris
@SpencerFarris Ай бұрын
You would use <sheet>.getActiveRange() as the thing to increment/decrement
@Caleb_3D
@Caleb_3D 2 ай бұрын
Thank you so much for making this video! This function is exactly what I need for a school project. Unfortunately, the code doesn't seem to be working for me. I opened a new sheet, opened the apps script, pasted the code from shane0163's comment, went back to the original sheet, typed "o1," and it didn't replace it. This was after trying to follow the tutorial and experiencing the same issue after the test at the 3 minute mark, where it just didn't replace it. Do you have any idea what's going on?
@SpencerFarris
@SpencerFarris Ай бұрын
can you share the spreadsheet with me? [email protected]
@Caleb_3D
@Caleb_3D Ай бұрын
@@SpencerFarris Unfortunately, I no longer have access to the blank sheet that I tested it in, and when I tried shane's code in a new blank sheet, it worked as expected, but my alternate solution does work (I just have to type the prices in manually instead of the names). I will be saving this video for if I ever need it, so thank you for making it!
@SpencerFarris
@SpencerFarris Ай бұрын
@@Caleb_3D Glad you got it sorted :)
@JabeRaddle
@JabeRaddle 2 ай бұрын
Subbed! One question, say you have formatting applied on the second sheet like fill colors. Is there a way to match the formatting from the second sheet into the first? For example, if Rant Kant was filled yellow and Elzar Mann was filled green and I wanted that to apply to the first page as well?
@SpencerFarris
@SpencerFarris Ай бұрын
I don't follow the ask, sorry?
@Nikki-l8b
@Nikki-l8b 2 ай бұрын
Hi, how would you change the formula if you needed more than one criteria? For example it needed to match data on column B as well.
@SpencerFarris
@SpencerFarris Ай бұрын
Use the AND() function and put the other condition
@Mafero1207
@Mafero1207 2 ай бұрын
thanks a lot, this was very useful; I've tried replicate this code to perform other action but replacing 1 to 0,01 (to use as percent) and I've get an error message, so… it's possible to use 0,01?
@SpencerFarris
@SpencerFarris Ай бұрын
What error did you get? You may need to check the locale settings OR use .01 instead of ,01
@wut-m9kbro
@wut-m9kbro 2 ай бұрын
update plssss 2024
@SpencerFarris
@SpencerFarris Ай бұрын
WDYM?
@leonardosfreitas
@leonardosfreitas 3 ай бұрын
Add editor: kzbin.infoUgkxZ3R4qWS62Oh8trl3hojcGQ03SUyg1433?si=GPwAoprZE14sIJCV
@papawhowho
@papawhowho 3 ай бұрын
Can I use this script to run when a bar code is scanned
@SpencerFarris
@SpencerFarris 23 күн бұрын
I've never dealt with bar code systems; IDK
@lostsaucestolen
@lostsaucestolen 3 ай бұрын
Can you do COUNTIF functions on a 3D Range? (e.g. count how many times a word appears across the same cell range in multiple sheets; I have ~30 sheets so rewriting the COUNTIF function for each sheet with 30 "+"s takes forever)
@SpencerFarris
@SpencerFarris 3 ай бұрын
I'm sure something could be programmed, but I don't have a script pre-made for that Alternatively use QUERY with a range of sheet names
@monicamusial4665
@monicamusial4665 3 ай бұрын
This is perfect! I am getting a document to save but it is not saving as a PDF I get a document that is nonsense. Any help would be greatly appreciated.
@SpencerFarris
@SpencerFarris 3 ай бұрын
Not sure. Want to share it with me?
@monicamusial4665
@monicamusial4665 2 ай бұрын
@@SpencerFarris Can I email you?
@monicamusial4665
@monicamusial4665 2 ай бұрын
@@SpencerFarris Thank you so much for responding back to me. I sent you an email with the shard requirements.
@nhattanktnn
@nhattanktnn 3 ай бұрын
How to enable dark mode in apps script editor?
@SpencerFarris
@SpencerFarris 3 ай бұрын
I use the AppsScript Color add on