Tayzer Damasceno
Tayzer Damasceno

Reputation: 302

Script on google sheet for filtering a specific name

need some help with script on google sheets

I'm having some issues to try to use "setVisibleValues" and I got an error saying "Exception: Visible values are not currently supported. As an alternative specify a list of hidden values that excludes the values that should be visible.". But my problem is, I've a huge number of employee names on a list, and I wanna filter just based in one person.

I cant show some information, but the thing is: "I just wanna filter one value, and I don't know how to do it using "setHiddenValues".

function Filtersheet() {

  var spreadsheet = SpreadsheetApp.getActive();

  spreadsheet.getRange('A3:S').activate();

  spreadsheet.getRange('H3').activate();

  var criteria = SpreadsheetApp.newFilterCriteria()

  .setHiddenValues([''])

  var criteria = SpreadsheetApp.newFilterCriteria()

  .setVisibleValues(['tayzer'])

  .build();

  spreadsheet.getActiveSheet().getFilter().setColumnFilterCriteria(8, criteria);

}

Lets say that the names of the Employees are : jorge, lucas, nuno, fernando, marta, beatriz, tayzer, larissa, and I wanna use the filter script to only show on the column the information related to tayzer

But my way to change the filter employee will be on a cell outside the script (cause I've around 200 employees)

Thanks in advance for the help

Upvotes: 0

Views: 1241

Answers (1)

Shiva
Shiva

Reputation: 348

try this

function setFilter() {
// replace 'sheet name' with you sheet
var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('sheet name');
var range = ss.getDataRange();
var filter = range.getFilter() || range.createFilter()
var criteria = SpreadsheetApp.newFilterCriteria().whenTextContains('tayzer');
filter.setColumnFilterCriteria(8, criteria);
}

if i am not wrong if you put "jorge" in cell_C4 you want it to filter "jorge" in column E, if so try below code.

function setFilter() {
// replace 'sheet name' with you sheet
var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('sheet name');
var range = ss.getDataRange();
var filter = range.getFilter() || range.createFilter()
var criteria = SpreadsheetApp.newFilterCriteria().whenTextContains(ss.getRange('C4').getValue()).build();
filter.setColumnFilterCriteria(8,criteria)
}

Upvotes: 1

Related Questions