Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function onOpen(e){
- SpreadsheetApp.getUi().createMenu('FillBlanks')
- .addItem('Fill fixed range', 'fillBlanksFixed')
- .addItem('Fill active range', 'fillBlanksActive')
- .addItem('Fill blanks offset check', 'fillBlanksActiveOfsetCheck')
- .addToUi()
- }
- function fillBlanksFixed(){
- const ss = SpreadsheetApp.getActiveSpreadsheet()
- const sheet = ss.getSheetByName('Data')
- const values = sheet.getRange(4,1,sheet.getLastRow(),5).getValues()
- const date = Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "dd/MM/yyyy");
- for (let i = 0; i < values.length; i++){
- if(values[i][4] == "" && values[i][0] != ""){
- sheet.getRange(i+4,5).setValue(date)
- }
- }
- }
- function fillBlanksActive(){
- const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
- const values = sheet.getActiveRange().getValues().flat();
- const date = Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "dd/MM/yyyy");
- const output = [];
- values.forEach(row => {
- if (row != ''){
- output.push([row])
- } else {
- output.push([date])
- }
- })
- sheet.getActiveRange().setValues(output)
- }
- function fillBlanksActiveOfsetCheck(){
- const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
- const values = sheet.getActiveRange().getValues().flat();
- const offsetValues = sheet.getActiveRange().offset(0,-4).getValues().flat()
- const date = Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "dd/MM/yyyy");
- const output = [];
- for (i = 0; i < values.length; i++){
- if(values[i] == '' && offsetValues[i] != ''){
- output.push([date])
- } else {
- output.push([values[i]])
- }
- }
- sheet.getActiveRange().setValues(output)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement