-
Notifications
You must be signed in to change notification settings - Fork 0
/
Multi-Select-Spreedsheet.js
29 lines (27 loc) · 1.38 KB
/
Multi-Select-Spreedsheet.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
function onEdit(e) {
var sheetName = "Hoja1"; // Aquí debemos indicar el nombre exacto entre comillas de la hoja de cálculo sobre la que aplicaremos la función.
var ss = e.source; // Obtener la hoja de cálculo activa
var range = e.range; // Obtener el rango editado (No es necesario con la configuración actual, pero mantenemos la variable)
var editedColumn = range.getColumn(); // Obtener el número de columna editada
var oldValue;
var newValue;
var activeCell = ss.getActiveCell();
// Definir las columnas en las que vamos aplicar la funcionalidad de lista desplegable con selección múltiple
var startColumn = 26; // Desde columna 26 (columna Z)
var endColumn = 34; // Hasta columna 34 (columna AH)
var excludedColumns = [27, 30, 32, 33]; // Columnas que vamos a excluir del rango anterior: AA, AD, AF, AG
// Aplicación de la función en base a condicionales.
if (ss.getActiveSheet().getName() === sheetName && editedColumn >= startColumn && editedColumn <= endColumn && !excludedColumns.includes(editedColumn)) {
newValue=e.value;
oldValue=e.oldValue;
if(!e.value) {
activeCell.setValue("");
} else {
if (!e.oldValue) {
activeCell.setValue(newValue);
} else {
activeCell.setValue(oldValue+', '+newValue);
}
}
}
}