Una de las características más potentes de SeaTable es la columna de fórmulas . Con las fórmulas puede contar los valores de otras columnas de la tabla actual –o incluso de otra tabla vinculada –, utilizarlos para cálculos, transformarlos, evaluarlos, combinarlos entre sí y compararlos. Además, las fórmulas pueden devolver constantes y valores lógicos.

Puede añadir tantas columnas de fórmulas como quiera, que a su vez sigan calculando con los resultados de las columnas de fórmulas existentes. La gran ventaja: los resultados de las columnas de fórmulas se actualizan automáticamente en cuanto se modifican los valores de las columnas implicadas.

Actualmente SeaTable ofrece las siguientes funciones si selecciona el tipo de columna Fórmula:

  • Filas
  • Constantes
  • Operandos
  • Funciones matemáticas
  • Funciones de texto
  • Funciones de la fecha
  • Funciones lógicas
  • Funciones estadísticas
  • Funciones de enlace

Editor de fórmulas de SeaTable con lista de funciones y ejemplo

Además de las funciones, en el editor de fórmulas hay una o varias listas de columnas. Se trata de las columnas seleccionables de la tabla actual y, en su caso, de las columnas de las tablas vinculadas. Si hace clic en el símbolo “+” de la derecha, la referencia de la columna se inserta en el campo de entrada con el formato {NombreColumna} o {ColumnaEnlace.NombreColumna}. Puede utilizar estos elementos directamente en su fórmula. Por supuesto, también puede introducir a mano los nombres de las columnas entre llaves.

En este artículo le mostramos una visión completa de todas las fórmulas de SeaTable con ejemplos adecuados. Si busca una función específica, puede utilizar la combinación de teclas Ctrl +F para encontrar rápidamente una entrada en esta página.

Operador Descripción Ejemplo
rowID() Devuelve el número de identificación único de la fila actual como cadena. X18XAJeTSWeaO5hlqyUp1w
Operador Descripción Ejemplos
e Devuelve el número de Euler e=2.71828…. e+1
= 3.71828183
pi Devuelve el número de círculo Pi. pi
= 3.14159265
true() Devuelve el valor lógico ’true'. true()
= true
false() Devuelve el valor lógico ‘false’. false()
= false
Operador Descripción Ejemplos
add(num1, num2) Suma dos valores numéricos (num1 y num2) y devuelve el resultado. add(1, 2)
= 3
Alternativa: + 1+2
= 3
subtract(num1, num2) Resta un valor numérico (num2) de otro (num1). subtract(5, 4)
= 1
Alternativa: - 5-4
= 1
multiply(num1, num2) Multiplica dos valores numéricos. multiply(3, 4)
= 12
Alternativa: * 3*4
= 12
divide(num1, num2) Divide un valor numérico (num1) entre otro (num2). divide(5, 2)
= 2.5
Alternativa: / 3/2
= 1.5
mod(num1, num2) Calcula el resto de una división. mod(10, 7)
= 3
Alternativa: %. 15%7
= 1
power(num1, num2) Calcula la potencia (num2) de un número (num1). power(3, 2)
= 9
Alternativa: ^ 3^2
= 9
greater(num1, num2) Comprueba si un valor numérico (num1) es mayor que otro (num2) y devuelve el valor lógico ‘verdadero’ o ‘falso’. greater(2, 3)
= false
Alternativa: > 2>3
= false
lessthan(num1, num2) Comprueba si un valor numérico (num1) es menor que otro (num2) y devuelve el valor lógico ‘verdadero’ o ‘falso’. lessthan(2, 3)
= true
Alternativ: < 2<3
= true
greatereq(num1, num2) Comprueba si un valor numérico (num1) es mayor o igual que otro (num2) y devuelve el valor lógico ‘verdadero’ o ‘falso’. greatereq(2, 3)
= false
Alternativa: >= 2>=3
= false
lessthaneq(num1, num2) Comprueba si un valor numérico (num1) es menor o igual que otro (num2) y devuelve el valor lógico ‘verdadero’ o ‘falso’. lessthaneq(2, 3)
= true
Alternativ: <= 2<=3
= true
equal(number1, number2) Comprueba si dos valores (number1, number 2) son iguales y devuelve el valor lógico ‘verdadero’ o ‘falso’. equal({Old price}, {New price})
= false
Alternativa: = {Old price}={New price}
= false
unequal(number1, number2) Comprueba si dos valores (number1, number2) son desiguales y devuelve el valor lógico ‘verdadero’ o ‘falso’ en cada caso. unequal({Old price}, {New price})
= true
Alternativa: <> {Old price}<>{New price}
= true
concatenate(string1, string2, …) Concatena varias cadenas (string1, string 2, …) en una sola cadena. concatenate({Supplier}, " is ", {Status})
= Linux is great
Alternativa: & {Supplier} & " is " & {Status}
= Linux is great
Operador Descripción Ejemplo de entrada Resultado
abs(number) Devuelve el valor absoluto de un número. abs(-2) 2
ceiling(number, significance) Redondea un número al entero más cercano o al múltiplo más cercano del paso especificado (significance). Si alguno de los argumentos no es numérico, la fórmula devuelve un valor vacío. ceiling(2.14) 3
Si el número es un múltiplo exacto del significado, entonces no hay redondeo. Si el número y la significación son negativos, entonces el redondeo se aleja de 0. Si el número es negativo y la significación es positiva, entonces el redondeo es hacia 0. ceiling(-2.14, 4) 0
even(number) Asigna el número par más grande más cercano a un número real (number). even(2.14) 4
exp(number) Función exponencial para el número de Euler e. Devuelve el valor de e elevado a la potencia de un número dado. exp(1) 2.71828…
floor(number, significance) Redondea un número al entero más cercano o al múltiplo más cercano del paso especificado (significance). Si alguno de los argumentos no es numérico, la fórmula devuelve un valor vacío. floor(2.86) 2
Si el número es un múltiplo exacto del significado, no hay redondeo. Si el signo del número es positivo, el redondeo es hacia el 0. Si el signo del número es negativo, el redondeo se aleja del 0. floor(-3.14, 5) -5
int(number) Asigna el número entero más pequeño más cercano a un número real (number). int(-3.14) -4
lg(number) Función de logaritmo (number) con 10 como base. lg(100) 2
ln(number) Función logarítmica (number) con el número de Euler e como base. ln(e) 1
log(number, base) Función de logaritmo (number) con base definible. log(81, 3) 4
Sin embargo, si no se da ninguna base, esta función funciona exactamente como lg(), es decir, con 10 como base. log(1000) 3
odd(number) Asigna el número impar más grande más cercano a un número real (number). odd(-2.14) -1
round(number, digits) Redondea un número a un número especificado de lugares decimales (digits). Si no se especifica ningún lugar decimal (digits), el número se redondea al primer lugar a la izquierda del punto decimal. round(3.14) 3
Si se da un decimal positivo (digits), redondea al dígito a la derecha del punto decimal. round(3.14, 1) 3.1
Si se da un decimal negativo (digits), se redondea a la izquierda del punto decimal. round(3.14, -3) 0
round(99.1, -2) 100
rounddown(number, digits) Redondea un número en dirección al cero. Si no se indica ningún lugar decimal (digits), el número se redondea al primer lugar a la izquierda del punto decimal. rounddown(3.12, 1) 3.1
rounddown(-3.15) -3
roundup(number, digits) Redondea un número a partir de cero. Si no se indica ningún lugar decimal (digits), el número se redondea al primer dígito a la izquierda del punto decimal. roundup(3.12, 1) 3.2
roundup(-3.15) -4
sign(number) Comprueba si un número es mayor, igual o menor que 0. Devuelve el valor 1, 0 y -1 respectivamente. Es decir, devuelve el signo de un número, respectivamente para “+”, “cero” y “-” con 1, 0 y -1. sign(-2) -1
sqrt(number) Devuelve la raíz cuadrada de un número. sqrt(81) 9
sum(num1, num2, …) Devuelve la suma de los números (num1, num2, …). sum(7,8,9) 24
Operador Descripción Ejemplo de entrada Resultado
concatenate(text1, text2, text3) Concatena varias cadenas (text1, text2, text3, …) en una sola cadena. concatenate(“Sea”, “Table”, " “, “Cloud”) SeaTable Cloud
Alternativa: text1 & text2 & text3 “Sea” & “Table” & " " & “Cloud” SeaTable Cloud
exact(string1, string2) Comprueba si dos cadenas (string1, string2) son exactamente idénticas. Devuelve los valores ’true’ o ‘false’. Se tienen en cuenta las mayúsculas y minúsculas. exact(‘SeaTable’, ‘Seatable’) false
find(findString, sourceString, startPosition) Devuelve la posición inicial de una cadena (findString) dentro de otra cadena (sourceString). Se respeta la sensibilidad a las mayúsculas y minúsculas. Sin un hallazgo, se devuelve 0. Si la posición inicial (startPosition) se da como decimal, se redondea hacia abajo. Si la celda de la columna de la palabra clave (findString) sigue vacía, se devuelve 1. Si la celda de la columna de la cadena de destino (sourceString) sigue vacía, se devuelve un valor vacío (’’). find(‘Sea’, ‘seaTable’, 1) 0
La búsqueda se iniciará a partir de la “startPosition” dada. Sin embargo, esta ‘startPosition’ no influye en el resultado: entonces siempre devuelve la posición inicial absoluta. Si la ‘startPosition’ de la cadena a encontrar (findString) se dio después de la posición de inicio real de la cadena (sourceString), se devuelve 0, porque no se encontró nada a partir de esta posición. find(’table’, ‘big table’, 4) 5
find(’table’, ‘big table’, 6) 0
left(string, count) Devuelve el número especificado (count) de caracteres al principio de una cadena. left(‘SeaTable’, 3) Sea
len(string) Devuelve el número de caracteres de una cadena. len(‘SeaTable’) 8
lower(string) Convierte una cadena en minúsculas. lower(‘DeutscH’) deutsch
mid(string, startPosition, count) Devuelve el número especificado (count) de caracteres desde la posición inicial especificada (startPosition) de una cadena. mid(‘SeaTable is the best’, 1, 8) SeaTable
La posición inicial (startPosition) y el número (count) no deben estar vacíos, ser negativos o ser iguales a cero. Sin embargo, si startPosition y count se dan como decimales, se redondean hacia abajo. Un número demasiado dado (count) será ignorado. mid(‘SeaTable is the best.’, 10.9, 27.3) is the best.
replace(sourceString, startPosition, count, newString) Reemplaza una parte (count) de una cadena (sourceString) a partir de una determinada posición inicial (startPosition) por otra cadena (newString). El número (count) de caracteres sólo se tiene en cuenta para la cadena antigua (sourceString), pero no para la nueva cadena (newString). replace(‘SeaTable is the best.’, 1, 8, ‘Seafile’) Seafile is the best.
Si la cuenta se da como cero, la nueva cadena se añade simplemente desde la posición inicial en la cadena antigua. replace(‘SeaTable is the best.’, 1, 0, ‘Seafile’) SeafileSeaTable is the best.
rept(string, number) Repite una cadena tantas veces (number) como se especifique. rept(‘Sea ‘, 3) Sea Sea Sea
right(string, count) Devuelve el número especificado (count) de caracteres al final de una cadena. right(‘SeaTable’, 5) Table
search(findString, sourceString, startPosition) Devuelve la posición inicial de una cadena (findString) dentro de otra cadena (sourceString). No se tiene en cuenta la sensibilidad a los casos. Sin un hallazgo, se devuelve 0. Si la posición inicial (startPosition) se da como decimal, se redondea hacia abajo. Si la celda de la columna de la palabra clave (findString) sigue vacía, se devuelve 1. Si la celda de la columna de la cadena de destino (sourceString) sigue vacía, se devuelve un valor vacío (’’). search(‘Sea’, ‘seaTable’, 1) 1
La búsqueda se iniciará a partir de la “startPosition” dada. Sin embargo, esta ‘startPosition’ no influye en el resultado: entonces siempre devuelve la posición inicial absoluta. Si la ‘startPosition’ de la cadena a encontrar (findString) se dio después de la posición de inicio real de la cadena (sourceString), se devuelve 0, porque no se encontró nada a partir de esta posición. search(’table’, ‘big table’, 4) 5
search(’table’, ‘big table’, 6) 0
substitute(sourceString, oldString, newString, index) Sustituye el texto existente (oldString) por el nuevo texto (newString) en una cadena (sourceString). Si hay más de un texto (oldString) en la cadena (sourceString), sólo se sustituye el texto ‘index’-th. Se respeta la sensibilidad a las mayúsculas y minúsculas. substitute(‘SeaTableTable’, ‘Table’, ‘file’, 1) SeafileTable
Si el índice se da como 0 o no, todas las partes de texto encontradas (oldString) se sustituyen por el nuevo texto (newString). substitute(‘SeaTableTable’, ‘Table’, ‘file’) Seafilefile
T(value) Comprueba si un valor es un texto. En caso afirmativo, se devuelve el texto. Si no, el valor de retorno está vacío. T(123) (en blanco)
T(‘123’) 123
text(number, format) Convierte un número en texto y lo formatea en el formato especificado. El formato puede ser porcentaje (‘percent’) y número, dólar (‘dollar’), euro (’euro’) y yuan (‘yuan’). text(150, ’euro’) €150
Cuando un número se convierte directamente en porcentaje, se mantiene su valor absoluto. Es decir, 50 se convierte en 5000%. Sin embargo, si quiere el 50%, todavía tiene que dividir el número por 100 antes de la conversión. text(50, ‘percent’) 5000%
text(50/100, ‘percent’) 50%
trim(string) Elimina los espacios al principio y al final de una cadena. trim(’ SeaTable ‘) SeaTable
upper(string) Convierte una cadena en mayúsculas. upper(‘DeutscH’) DEUTSCH
value(string) Convierte un texto (string) que representa un número en un número. value(‘123’) 123
Operador Descripción Ejemplo de entrada Resultado
date(year, month, day) Devuelve una fecha en formato internacional (ISO) a partir del año, mes y día introducidos. Si el año se introduce con dos dígitos, se entiende automáticamente como un año del 1900. Si el número del mes o del día es demasiado grande (mayor que 12 o 31 respectivamente), estos meses o días se convierten automáticamente al año o al mes siguiente. date(2021, 1, 3) 2021-01-03
+ Añade días o duración a una fecha con o sin minutos. Si la columna de la fecha no tiene minutos, se toman las 00:00 de ese día como valor por defecto. date(2021, 1, 31)+1 2021-02-01
Por ejemplo, si se introduce una duración de 8 horas y 20 minutos en la columna {duración} tiene: date(2021, 1, 31)+{duration} 2021-01-31 08:20
- Resta días o duración de una fecha con o sin minutos. Si la columna de fecha no tiene minutos, se toma 00:00 como valor por defecto de ese día. date(2021, 1, 31) - 30 2021-01-01
Por ejemplo, si se introduce una duración de 8 horas y 20 minutos en la columna {duración} tiene: date(2021, 1, 31)-{duration} 2021-01-30 15:40
Con {Fecha1}-{Fecha2} devuelve la diferencia de tiempo en días. date(2021, 1, 31)-date(2020, 12, 23) 39
dateAdd(date, count, unit) Añade el número especificado (count) de años (‘years’), meses (‘months’), semanas (‘weeks’), días (‘days’), horas (‘hours’), minutos (‘minutes’) o segundos (‘seconds’) a una fecha/hora (date). dateAdd(‘2020-02-03’, 2, ‘days’) 2020-02-05
Consejo: si quiere añadir una duración compleja (count) como 1 día 12 horas, puede convertirla, por ejemplo, en 24+12=36 horas e introducirla como una única duración (count) en la fórmula. Para ello, convierta la duración a la unidad más pequeña: en este caso, horas. dateAdd(‘2020-09-04 13:05:18’, 36, ‘hours’) O dateAdd({form submission}, 36, ‘hours’) 2020-09-06 01:05:18
dateDif(startDate, endDate, unit) Calcula los segundos, días, meses o años entre dos valores de fecha. El argumento de la unidad opcional puede ser uno de los siguientes: S (segundos), D (días completos), M (meses completos), Y (años completos), YD (días completos, ignorando los años), YM (meses completos, ignorando días y años), MD (días completos, ignorando meses y años). dateDif(‘2018-01-01’, ‘2020-01-01’, ‘Y’) 2
El argumento de unidad opcional puede ser uno de los siguientes: S (segundos), D (días completos), M (meses completos), Y (años completos), YD (días completos, sin tener en cuenta los años), YM (meses completos, sin tener en cuenta los días y los años), MD (días completos, sin tener en cuenta los meses y los años). dateDif(‘2019-10-11’, ‘2020-12-12’, ‘M’) 14
datetimeFormat(date, format) Convierte el valor de una columna de fecha en una cadena. Los marcadores de posición (format) permiten mostrar el mes, el día, la hora, el minuto y el segundo en el formato deseado. datetimeFormat(“2020-01-01”, “MM/DD/YYYY”) 01/01/2020
Consejo: si inserta el marcador de posición MMMM, el nombre completo del mes se muestra en letras. datetimeFormat({Birthday}, “D MMMM YYYY”) 6 November 1972
day(date) Devuelve el día de una fecha como un número. El número devuelto está entre 1 y 31. day(‘2020-01-03’) 3
days(startDate, endDate) Devuelve el número de días entre dos valores de fecha (startDate y endDate). days(‘2020-01-01’, ‘2020-02-03’) 33
eomonth(startDate, months) Determina la fecha del último día del mes que es el número especificado (months) de meses después de la fecha especificada (startDate). Si el número (months) se da como 0, simplemente se determina el último día del mes. eomonth(‘2020-01-01’, 1) 2020-02-29
Si el número (months) se da como negativo, se determina la fecha del último día del mes que contiene el número absoluto (months) de meses antes de la fecha especificada (startDate). eomonth(‘2020-01-01’, -1) 2019-12-31
hour(date) Devuelve la hora de un tiempo (date) como un número. El número devuelto está entre 0 y 23. hour(‘2020-02-14 13:14:52’) 13
Si no hay ninguna hora en el tiempo (date), se devuelve 0. hour(‘2020-02-14’) 0
hours(startDate, endDate) Devuelve el número de horas entre dos valores de fecha (startDate y endDate). Los minutos en los valores de la fecha no se tienen en cuenta. hours(‘2020-02-14 13:14’, ‘2020-02-14 15:14’) 2
Si no se incluyen horas en la especificación de la hora (startDate o endDate), se asumen automáticamente las 0 horas de ese día. hours(‘2020-02-14’, ‘2020-02-14 15:14’) 15
minute(date) Devuelve los minutos de una hora (date) como un número. El número devuelto está entre 0 y 59. minute(‘2020-02-14 13:14:52’) 14
Si no hay minutos en la hora (date), se devuelve 0. minute(‘2020-02-14’) 0
month(date) Devuelve el mes de una fecha como un número. El número devuelto está entre el 1 (enero) y el 12 (diciembre). month(‘2020-02-14 13:14:52’) 2
months(startDate, endDate) Devuelve el número de meses entre dos valores de fecha (startDate y endDate). Los días y la hora de los valores de la fecha no se tienen en cuenta. months(‘2020-02-01 13:14’, ‘2020-03-31 15:54’) 1
Si no se indica ningún mes en los valores de la fecha (startDate, endDate), se asume automáticamente enero como mes. months(‘2020’, ‘2021’) 12
networkdays(startDate, endDate, holiday1, holiday2, …) Devuelve el número de días laborables enteros entre dos valores de fecha (startDate y endDate). También puede definir otros días festivos además del sábado y el domingo (holiday1, holiday2, etc.), éstos también se descontarán. Si no hay que incluir ningún día festivo en el cálculo, estos parámetros pueden simplemente omitirse. networkdays(‘2020-01-01’, ‘2020-01-07’,‘2020-01-01’) 4
Tenga en cuenta que el último día especificado (endDate) también se cuenta en la fórmula. Es decir, como por ejemplo en esta fórmula, se cuentan tres días hábiles: el 7, 8 y 9 de septiembre de 2020. networkdays(‘2020-09-07’, ‘2020-09-09’) 3
now() Devuelve la fecha y la hora actuales. Esta columna sólo se actualiza automáticamente cuando la base ha sido recargada. now() 2020-09-07 12:59
second(date) Devuelve los segundos de una hora (date) como un número. El número devuelto está entre 0 y 59. second(‘2020-02-14 13:14:52’) 52
today() Devuelve la fecha actual. Esta columna sólo se actualiza automáticamente cuando la base ha sido recargada. today() 2020-09-07
Esta función es conveniente para calcular la duración del tiempo entre una determinada fecha y hora y el momento. En cada recarga o recálculo de la base, el cálculo se actualiza. networkdays(‘2020-09-01’, today()) 4
weekday(date, weekStart) Devuelve el día de la semana de una fecha como un número. El número devuelto está entre 1 y 7. Puede definir el primer día de la semana (weekStart): Lunes (‘Monday’) o domingo (‘Sunday’ o dejarlo fuera, porque el inicio como domingo es por defecto). Una tercera opción no es posible. No se tienen en cuenta las mayúsculas y minúsculas. weekday(‘2020-01-01’, ‘Monday’) 3
Si no se indica ningún “weekStart” o si se indica un “weekStart” distinto de “lunes” o “domingo”, siempre se asume que es “domingo”. Por lo tanto, si debe ser “lunes”, introduzca “lunes”; si debe ser “domingo”, puede omitir este parámetro. weekday(‘2020-01-01’, ‘Thursday’) O weekday(‘2020-01-01’) 4
weeknum(date, return_type) Devuelve el número de semana absoluto de una fecha como un número. El número devuelto está entre 1 y 53. Aquí puede definir el primer día de la semana (return_type). Introduzca el número 1 o 2, o del 11 al 17, y el 21 como “return_type” para definir el inicio de una semana: 1/Domingo、2/Lunes、11/Lunes、12/Martes、13/Miércoles、14/Jueves、15/Viernes、16/Sábado、17/Domingo. Si el número de la semana debe devolverse según la norma ISO, especifique el número 21 como “return_type”, o utilice la función isoweeknum. weeknum(‘2020-01-12’, 11) 2
Si no se indica ‘return_type’, se asume siempre que es ‘Sunday’. weeknum(‘2020-01-12’) 3
isoweeknum(date) Devuelve el número de semana ISO (KW) de una fecha como un número. isoweeknum(‘2021-01-04’) 1
Diferente de la función weeknum(): con la función isoweeknum() a veces también se obtiene un número de semana que todavía está en el año anterior. En este ejemplo: el 1 de enero de 2021 pertenece a la 53ª semana natural de 2020 según la norma ISO. isoweeknum(‘2021-01-01’) 53
year(date) Devuelve el año de una fecha como un número. year(‘2020-01-01’) 2020
Operador Descripción Ejemplo de entrada Resultado
and(logical1, logical2, …) Comprueba si todos los argumentos (logical1, logical2, …) son verdaderos (válidos, no vacíos y no nulos). Si es así, se devuelve ’true’, en caso contrario ‘false’. and(1, ‘’, 2) false
if(logical, value1, value2) Comprueba si un argumento (logical) es verdadero y, en caso afirmativo, devuelve el primer valor (value1) y, en caso negativo, devuelve el segundo valor (value2). Atención: los dos valores (value1 y value2) deben ser del mismo tipo, por ejemplo, ambos deben ser cadena, o número. En caso contrario, el primer resultado definirá el tipo de columna y donde deba añadir el segundo valor, se rellenará un valor vacío. if(1>2, 3, 4) 4
Para la condición (logical), sólo se permite una comparación con. Si sólo introduce la condición (logical) y el primer valor (value1): devolverá el primer valor (value1) si la condición (logical) es verdadera; y devolverá un valor vacío (’’) si la condición (logical) es falsa. if({Presupuesto}>{Precio}, “Sí”)
ifs(logical1, value1, logical2, value2, …) Comprueba si se cumplen una o varias condiciones (logical1, logical2, …) y devuelve un valor (value1, value2, …) que coincide con la primera condición VERDADERA. Intente especificar todos los valores devueltos (value1, value2) en el mismo tipo (ya sea todo «string» o todo «number»), como por ejemplo en ifs({Area}=0,«mini»,{Area}<=100,” small«,{Area}1000,»large"), el resultado siempre será «string», o en el ejemplo de la derecha, el resultado siempre será «number». Sin embargo, si ha especificado números como cadenas, la función ifs también funcionará, pero en este caso ya no se calculará automáticamente la suma para esta columna, ya que se considerará una cadena. ifs( 1>2, 3, 5>4, 9) 9
isempty(“columnname”) Comprueba si una celda de la columna indicada está vacía. Si está vacía, se devuelve ’true’; si no está vacía, ‘false’. isempty(“Calendar Event ID”) true
iserror(value) Comprueba si el argumento es un valor de error. Si lo es, devuelve ’true’; si no, ‘false’. iserror("#VALUE!") true
not(boolean) Invierte el valor lógico (boolean). En otras palabras: convierte “verdadero” en “falso” y “falso” en “verdadero”. not(and(1, ‘’, 2)) true
or(logical1, logical2, …) Comprueba si al menos 1 de los argumentos (value1, value2, …) es verdadero (válido, no vacío y no nulo) y devuelve ’true’ en este caso. Si todos los argumentos son falsos, entonces devuelve ‘false’. or(1, ‘’, 2) true
switch(logical, matcher1, value1, matcher2, value2, …, default) Evalúa una expresión (logical) contra una lista de valores (matcher) y devuelve el resultado (value) que coincide con el primer valor coincidente. Si no hay ninguna coincidencia, se devuelve un valor opcional por defecto. Deben especificarse al menos 3 parámetros (logical, matcher, value). switch(weekday(“2000-01-01”), 1, “Sunday”, 2, “Monday”, 3, “Tuesday”, 4, “Wednesday”, 5, “Thursday”, 6, “Friday”, 7, “Saturday”, “no match”) Saturday
Si hay varios valores idénticos en la lista de valores (matcher), sólo se tiene en cuenta la primera coincidencia. switch(int(68/10), 6, ‘OK’, 6, ‘KO’) OK
xor(logical1, logical2, …) Devuelve la contravaloración de todos los argumentos. En otras palabras: Comprueba si el número de argumentos verdaderos (logical) es impar y devuelve el valor ’true’. xor(1, 0, 2<1, 1) false
Operador Descripción Ejemplos
average(number1, number2, …) Devuelve la media de los números (number1, number2, …). average(1, 2, 3, 4, 5)
= 3
count(number1, number2, …) Devuelve la cantidad de números (number1, number2, …). Sólo se consideran los números válidos y no vacíos. En este ejemplo, ’’ es un valor vacío, y ‘3’ no es un número sino un texto. count(1, '', 2, '3')
= 2
counta(textORnumber1, textORnumber2, …) Cuenta el número de celdas no vacías (textORnumber1, textORnumber2, …). Estas celdas pueden ser de texto o numéricas. En este ejemplo, 1 y 2 son números, ‘3’ es un texto y ’’ es un valor vacío. counta(1, '', 2, '3')
= 3
countall(textORnumber1, textORnumber2, …) Cuenta el número de elementos (textORnumber1, textORnumber2, …) incluyendo números (1, 2), texto (‘3’) y celdas vacías (’’). countall(1, '', 2, '3')
= 4
countblank(textORnumber1, textORnumber2, …) Cuenta el número de celdas vacías. countall(1, '', 2, '3')
= 1
countItems(“column-name”) Cuenta el número de elementos en una celda. Los tipos de columna soportados son selección múltiple, empleado, archivo e imagen. countItems("members")
= 6
max(number1, number2, …) Devuelve el mayor valor de los números especificados (number1, number2, …). max(-1, 3, 4, 2, -1)
= 4
min(number1, number2, …) Devuelve el valor más pequeño de los números especificados (number1, number2, …). min(-1, 3, 4, 2, -1)
= -1
large(num1, num2, …, k) Devuelve el valor k más grande de la lista de números (num1, num2, …). En este ejemplo: large(35, 92, 10, 2) devuelve el valor 2 más grande de (35, 92, 10), que es 35. large(35, 92, 10, 2)
= 35
small(num1, num2, …, k) Devuelve el valor k más pequeño de la lista de números (num1, num2, …). En este ejemplo: small(9, 2, -7, -3, 3) devuelve el valor más pequeño de (9, 2, -7, -3), que es 2. small(9, 2, -7, -3, 3)
= 2

Puede utilizar aquí las funciones de enlace como fórmula o configurarlas directamente con la columna Fórmula para enlaces.

Operador Descripción Ejemplos
countlinks(“Column”, [condition]) Cuenta las entradas enlazadas en la columna de enlaces dada (Column). Las entradas pueden filtrarse con el parámetro opcional condition([condition]). En el ejemplo: En la tabla actual hay una columna de enlace “Speakers”. En una de sus celdas hay varias entradas vinculadas. Ahora queremos contar cuántos enlaces hay en cada celda en la que el “Price” de la entrada vinculada es mayor que 500. countlinks("Speakers", "{Price}>500")
= 3
(Número de entradas vinculadas a la columna “Speakers” en las que “Price” es superior a 500).
rollup(“Column”, “Other column”, summary, [condition]) Devuelve un valor evaluado de entradas vinculadas en otras tablas. Al enlazar desde la columna “Column”, se evalúan las entradas de la columna “Other column” de la tabla enlazada. Los métodos de resumen (“summary”) que se pueden realizar son ‘average’, ‘concatenate’, ‘count’, ‘max’, ‘min’ y ‘sum’. Opcionalmente, se pueden aplicar condiciones de filtrado. En el ejemplo: En la tabla actual hay una columna de enlace ‘Speakers’ que está vinculada a otra tabla. Como cada “Speaker” está vinculado a varias entradas, queremos averiguar, con un “Price” inferior a 500, cuál es la mayor “Power” de cada “Speaker”. rollup("Speakers", "Power", "max", "{Price} < 500")
= 80
(El mayor valor de las entradas vinculadas a la columna “Speakers” en “Power” en las que el “Price” es inferior a 500).
lookup(findmax(“Column”, “Other column”), “Target”) Busca el mayor valor de la columna vinculada (“Other column”) y devuelve el valor de la misma fila de otra columna (“Target”). Especifique qué columna vinculada (“Column”) y qué columna vinculada (“Other column”) y columna de destino (“Target”) deben utilizarse. En el ejemplo: En la tabla actual hay una columna de enlace “Speakers” que está vinculada a otra tabla. Dado que cada “Speaker” está vinculado a varias entradas, queremos averiguar qué “Price” tiene cada “Speaker” para su mayor “Power”. lookup(findmax("Speakers", "Power"), "Price")
= 350
(Devuelve el mayor valor “Price” en “Power” vinculado a la columna “Speakers”).
lookup(findmin(“Column”, “Other column”), “Target”) Busca el valor más pequeño de la columna vinculada (“Other column”) y devuelve el valor de la misma fila de otra columna (“Target”). Especifique qué columna vinculada (“Column”) y qué columna vinculada (“Other column”) y columna de destino (“Target”) deben utilizarse. En el ejemplo: En la tabla actual hay una columna de enlace “Speakers” que está vinculada a otra tabla. Dado que cada “Speaker” está vinculado a varias entradas, queremos averiguar qué “Price” tiene cada “Speaker” para su menor “Power”. lookup(findmin("Speakers", "Power"), "Price")
= 210
(El “Price” del valor más pequeño en “Power” vinculado a la columna “Speakers”).