Skip to content

Instantly share code, notes, and snippets.

@dserodio
Last active November 3, 2021 18:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dserodio/c1c4a905b0c25f3f2a19a356a1e46821 to your computer and use it in GitHub Desktop.
Save dserodio/c1c4a905b0c25f3f2a19a356a1e46821 to your computer and use it in GitHub Desktop.
Hide Google Sheets columns with zeros
/*
* Usage: Tools > Script Editor
* replace all code with below
* Click Run
*
* Source: https://stackoverflow.com/a/13591754/31493
*/
function onOpen() {
// get active spreadsheet
var ss = SpreadsheetApp.getActiveSpreadsheet();
// create menu
var menu = [{name: "Hide columns", functionName: "hideColumns"},
{name: "Show all columns", functionName: "showColumns"}];
// add to menu
ss.addMenu("Show/Hide Columns", menu);
}
function hideColumns() {
// get active spreadsheet
var ss = SpreadsheetApp.getActiveSpreadsheet();
// get first sheet
var sheet = ss.getSheets()[0];
// get data
var data = sheet.getDataRange();
// get number of columns
var lastCol = data.getLastColumn()+1;
Logger.log(lastCol);
// iterate through columns
for (var i = 1; i < lastCol; i++) {
if (data.getCell(3, i).getValue() == 0) {
sheet.hideColumns(i);
}
}
}
function showColumns() {
// get active spreadsheet
var ss = SpreadsheetApp.getActiveSpreadsheet();
// get first sheet
var sheet = ss.getSheets()[0];
// get data
var data = sheet.getDataRange();
// get number of columns
var lastCol = data.getLastColumn();
// show all columns
sheet.showColumns(1, lastCol);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment