I have 2 different scenarios which I want my google apps script to work-
- Hide/Unhide sheets based on a cell value -
hide_sheets.gs
- Hide/Unhide rows based on a cell value -
hide_rows.gs
The apps script for hide_sheets,gs
-
function onEdit() {
var x = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = x.getSheetByName("Test1");
var sheet2 = x.getSheetByName("Test2");
var sheet3 = x.getSheetByName("Test3");
var sheet4 = x.getSheetByName("Test4");
var cella = sheet1.getRange('B2');
if (cella.getValue() == 'Yes') {
sheet2.showSheet();
}
else {
sheet2.hideSheet();
}
var cellb = sheet1.getRange('B3');
if (cellb.getValue() == 'Yes') {
sheet3.showSheet();
}
else {
sheet3.hideSheet();
}
var cellc = sheet1.getRange('B4');
if (cellc.getValue() == 'Yes') {
sheet4.showSheet();
}
else {
sheet4.hideSheet();
}
}
The above script reads the sheeta cell values B2, B3 and B4 corresponding to sheetb, sheetc, sheetd. If the value is selected ``Yes```from dropdown the respective sheet will get unhidden else that sheet will be hidden.
Now, the apps script for hide_rows.gs
-
unction onEdit() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet4 = ss.getSheetByName("sheet4");
var cellx = sheet4.getRange("D3");
if ((cellx.getValue() == "No") || ((cellx.getValue() == ""))){
sheet4.hideRows(15);
}
else {
sheet4.showRows(15)
}
}
The above script hides a row 15
based on the selection in sheet4
on cell D3
When I save and execute script. hide_sheets.gs
, it works fine independently. But when I save and execute hide_rows.gs
the hide_sheets.gs
does not work.
Please help on how should I approach.
Thank you.