¿Cuál es el equivalente de parseInt()
(JS) o intval()
(PHP) en las Hojas de cálculo de Google?
Quiero calcular la suma de los números en una fila en una celda separada. Entonces, si tuviera 3 cups
y 5 cups
en una fila, lo conseguiría 18
.
google-sheets
PIE
fuente
fuente
Respuestas:
Una forma de implementar algo como esto es
El resultado de esta fórmula para algunas cadenas de ejemplo se da a continuación.
Puede que tenga que modificar esto para satisfacer sus necesidades individuales. Debería funcionar bastante bien para cadenas tan simples como "3 tazas".
SPLIT(..., " ")
divide una cadena en sus partes separadas por espacios. Puede agregar más caracteres a la cadena, por ejemplo" -/"
, para dividir cada vez que se encuentren esos caracteres.ISNUMBER
comprueba si una cadena es un número.FILTER
toma la matriz y filtra todo lo que no satisface la segunda función, es decir, elimina todo lo que no es un número.INDEX(...; 1; 1)
devuelve el valor en la primera fila, primera columna de la matriz (por lo que solo obtenemos el primer número de la lista, no todos los números de la lista).VALUE
probablemente no será necesario, pero solo por una buena medida convierte la cadena final en un valor numérico.fuente
VALUE
...VALUE
genera un error ("no se puede analizar en un número") en todas las entradas de ejemplo que di en la respuesta.VALUE
es la respuesta a la primera pregunta de OP y también el título.Otra alternativa que funciona con celdas que contienen copa o copas
fuente
Una
parseInt()
alternativa es:Fórmula
Captura de pantalla
Nota
El
LEN(B1:B2)-5
, incluye un espacio en blanco.Referencia
https://support.google.com/drive/answer/3093490
fuente
Parece un buen uso para la expresión regular. Por ejemplo:
donde la fórmula en E2 es:
Esto elimina todos los no numéricos, concatena el resultado con
+
y antepone=
.Copiar / Pegar / Pegar valores solo en, digamos, F2 (podría ser E2) y luego Reemplazar
=
con=
.ÚNETE A
REGEXREPLACE
fuente