Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Prompt for password before allowing edit of formula cells
- function onEdit(e) {
- var ss = SpreadsheetApp.getActiveSpreadsheet();
- var sheet = ss.getActiveSheet();
- var cell = sheet.getActiveCell();
- var editRange = e.range;
- var editCol = editRange.getColumn();
- if (editCol != 4 ) {
- var password = "321"; // not actual password
- var passwordAttempt = Browser.inputBox('Enter Password to edit protected range, or hit cancel to cancel edit:', Browser.Buttons.OK_CANCEL);
- if(passwordAttempt == password) {
- Browser.msgBox('Edit Accepted');
- } else {
- if (passwordAttempt != 'cancel'){
- Browser.msgBox('Incorrect password. Contact James Atkins for password to edit protected ranges.');
- }
- if(e.oldValue){
- Browser.msgBox('old value is defined as ' + e.oldFormula);
- e.range.setValue(e.oldValue);
- } else {
- e.range.clear();
- }
- }
- function onEdit(e) {
- var ss = SpreadsheetApp.getActiveSpreadsheet();
- var sheet = ss.getActiveSheet();
- var cloneSheet = ss.getSheetByName("cloneSheet")
- var cell = sheet.getActiveCell();
- var editRange = e.range;
- var cloneRange = cloneSheet.getRange(editRange.getA1Notation())
- var editCol = editRange.getColumn();
- if (editCol != 4 && sheet.getName() != "cloneSheet") {
- var password = "321"; // not actual password
- var passwordAttempt = Browser.inputBox('Enter Password to edit protected range, or hit cancel to cancel edit:', Browser.Buttons.OK_CANCEL);
- if(passwordAttempt == password) {
- Browser.msgBox('Edit Accepted');
- cloneRange.setValue(editRange.getFormula()) //modify the clone to match the new formula.
- } else {
- if (passwordAttempt != 'cancel'){
- Browser.msgBox('Incorrect password. Contact James Atkins for password to edit protected ranges.');
- }
- if(e.oldValue){
- Browser.msgBox('old value is defined as ' + cloneRange.getFormula());
- e.range.setValue(cloneRange.getFormula());
- } else {
- e.range.clear();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement