En búsqueda de una respuesta a esta pregunta, se me ocurrió la siguiente solución:
- aplicar filtros en la sábana;
- color las celdas filtradas (y por lo tanto visibles) (en el código de ejemplo rojo en la columna F); guión
- de ejecución:
- lectura de fondo de colores (columna F) en colores de matriz
- la iteración de esta matriz
- la construcción de la nueva gama de números de fila que son visibles.
Esta última matriz puede utilizarse para manipulaciones adicionales de los datos de la hoja. Para vivualizar el efecto de la secuencia de comandos, hice la secuencia de comandos estableciendo el fondo de las celdas utilizadas en verde.
Es un pequeño esfuerzo extra para el usuario final, pero en mi humilde opinión es la única manera de hacer posible que solo se usen los datos filtrados.
function getFilterdData(){
var s = SpreadsheetApp.getActive();
var sheet= s.getSheetByName('Opdrachten en aanvragen');//any sheet
var rows = new Array();
var colors = sheet.getRange(1, 6, sheet.getLastRow(), 1).getBackgrounds();
for(var i = 0; i < colors.length; i++){
if(colors[i] == "#ff0000"){
var rowsIndex = rows.length;
rows[rowsIndex] = i+1;
sheet.getRange(i+1, 6).setBackground("#d9ead3")
}
}
}
Puede revisar esta solución: http://stackoverflow.com/a/42615146/4786114 – Richi