Cómo editar fórmulas en una hoja de cálculo

por Chaknith Bin

Una fórmula de Excel es una expresión que empieza por un signo igual (=) utilizado para cálculos matemáticos, manipulación de datos y derivación de resultados basados en los valores de las celdas. Puede contener operaciones aritméticas, funciones, referencias a celdas, constantes y operaciones lógicas. Las fórmulas permiten actualizaciones dinámicas a medida que cambian los valores de las celdas, lo que convierte a Excel en una herramienta versátil para la automatización de tareas y el análisis de datos.

IronXL permite editar fórmulas existentes en un archivo de Excel, recuperar el resultado de la fórmula y forzar la reevaluación del libro de trabajo. Esto garantiza que cada fórmula se recalculará para obtener resultados precisos. IronXL admite más de 165 fórmulas.


Biblioteca NuGet C# para Excel

Instalar con NuGet

Install-Package IronXL.Excel
o
Java PDF JAR

Descargar DLL

Descargar DLL

Instalar manualmente en su proyecto

Editar fórmulas Ejemplo

Para editar o establecer la fórmula, acceda a la propiedad Fórmula. Primero, seleccione un Rango o Celda, y luego acceda y establezca la propiedad Fórmula. La propiedad Formula es una propiedad get y set que devuelve la cadena de fórmula, si existe. Invoca el método EvaluateAll para reevaluar todo el libro de trabajo, asegurando cálculos precisos.

:path=/static-assets/excel/content-code-examples/how-to/edit-formulas-edit-formulas.cs
using IronXL;

//  Cargar libro de trabajo
WorkBook workBook = WorkBook.Load("Book1.xlsx");

//  Seleccionar hoja de cálculo
WorkSheet workSheet = workBook.DefaultWorkSheet;

//  Editar o fijar fórmula
workSheet["A4"].Formula = "=SUM(A1,A3)";

//  Reevaluar todo el libro de trabajo
workBook.EvaluateAll();
Imports IronXL

'  Cargar libro de trabajo
Private workBook As WorkBook = WorkBook.Load("Book1.xlsx")

'  Seleccionar hoja de cálculo
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

'  Editar o fijar fórmula
Private workSheet("A4").Formula = "=SUM(A1,A3)"

'  Reevaluar todo el libro de trabajo
workBook.EvaluateAll()
VB   C#

Recuperar el resultado de una fórmula

Aunque a veces es aplicable recuperar el resultado de la propiedad Valor del Rango y Celda seleccionados, se recomienda recuperar el resultado de la propiedad ValorCeldaFormateada de la Celda para obtener un resultado más preciso de la fórmula. En el Rango seleccionado, puede acceder a la Celda invocando el método First. Este método seleccionará el primer elemento de la lista, que, en nuestro caso, es la Celda "A4". Desde ahí, puedes acceder a la propiedad FormattedCellValue.

:path=/static-assets/excel/content-code-examples/how-to/edit-formulas-retrieve-formula-value.cs
using IronXL;
using System;
using System.Linq;

//  Cargar libro de trabajo
WorkBook workBook = WorkBook.Load("Book1.xlsx");

//  Seleccionar hoja de cálculo
WorkSheet workSheet = workBook.DefaultWorkSheet;

//  Recuperar el valor del resultado
string value = workSheet["A4"].First().FormattedCellValue;

//  Imprimir el resultado en la consola
Console.WriteLine(value);
Imports IronXL
Imports System
Imports System.Linq

'  Cargar libro de trabajo
Private workBook As WorkBook = WorkBook.Load("Book1.xlsx")

'  Seleccionar hoja de cálculo
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

'  Recuperar el valor del resultado
Private value As String = workSheet("A4").First().FormattedCellValue

'  Imprimir el resultado en la consola
Console.WriteLine(value)
VB   C#

Fórmula admitida

Excel contiene más de 450 fórmulas que pueden utilizarse para realizar cálculos con diversos fines. IronXL es compatible con unas 165 de las fórmulas más utilizadas. Consulte a continuación las fórmulas admitidas:

Nombre de la fórmulaDescripción
ABSDevuelve el valor absoluto de un número, sin tener en cuenta su signo.
INTRedondea un número al entero más próximo.
CONTARCuenta el número de celdas que contienen números dentro de un rango especificado.
SIRealiza una prueba condicional y devuelve un valor si la condición es verdadera y otro si es falsa.
SUMSuma un rango de números.
MEDIACalcula la media de un rango de números.
MINDevuelve el valor mínimo de un conjunto de números.
MAXDevuelve el valor máximo de un conjunto de números.
FILADevuelve el número de fila de una referencia de celda.
COLUMNADevuelve el número de columna de una referencia de celda.
NARepresenta un valor de error para "No disponible" o datos que faltan.
VANCalcula el Valor Actual Neto de una serie de flujos de caja a un tipo de descuento determinado.
STDEVCalcula la desviación típica de un conjunto de números.
FIRMADevuelve el signo de un número como -1 para negativo, 0 para cero o 1 para positivo.
RONDARedondea un número a un número especificado de decimales.
BUSCARBusca un valor en un rango y devuelve el valor correspondiente de otro rango.
ÍNDICEDevuelve el valor de una celda en una fila y columna especificadas de un rango dado.
REPTRepite una cadena de texto un número especificado de veces.
MIDExtrae una porción de texto de una cadena de texto dada basándose en una posición inicial y una longitud especificadas.
LENDevuelve el número de caracteres de una cadena de texto.
VALOConvierte una cadena de texto que representa un número en un número real.
TRUERepresenta el valor lógico de "Verdadero".
FALSORepresenta el valor lógico de "Falso".
YComprueba si todas las condiciones especificadas son verdaderas y devuelve "True" si lo son, y "False" en caso contrario.
OComprueba si al menos una de las condiciones especificadas es verdadera y devuelve "True" en caso afirmativo y "False" en caso contrario.
NOInvierte el valor lógico de una condición, convirtiendo "Verdadero" en "Falso" y viceversa.
MODDevuelve el resto al dividir un número por otro.
DMINExtrae el valor mínimo de una base de datos en función de los criterios especificados.
VARCalcula la varianza de un conjunto de números.
TEXTOConvierte un número en texto utilizando un formato especificado.
FVCalcula el valor actual de una inversión o préstamo a partir de una serie de flujos de caja y un tipo de descuento.
FV (Valor Futuro)Calcula el valor futuro de una inversión o préstamo basándose en pagos periódicos y un tipo de interés determinado.
NPER (Número de periodos)Determina el número de periodos de pago necesarios para alcanzar un determinado objetivo financiero, dados unos pagos regulares y un tipo de interés.
PMT (Pago)Calcula el pago periódico necesario para amortizar un préstamo o inversión, incluidos el principal y los intereses.
RATE (Tipo de interés)Calcula el tipo de interés necesario para alcanzar un objetivo financiero con una serie de pagos periódicos.
MIRR (Tasa Interna de Rentabilidad Modificada)Calcula la tasa interna de rentabilidad de una serie de flujos de caja, abordando múltiples tasas de reinversión y financiación.
TIR (Tasa Interna de Rentabilidad)Calcula la tasa interna de rentabilidad de una serie de flujos de caja, indicando la tasa de equilibrio de una inversión.
RYGenera un número decimal aleatorio entre 0 y 1.
MATCHBusca un valor especificado en un rango y devuelve la posición relativa del elemento encontrado.
FECHACrea un valor de fecha especificando el año, el mes y el día.
TIEMPOCrea un valor de tiempo especificando la hora, el minuto y el segundo.
DÍAExtrae el día de una fecha dada.
MESExtrae el mes de una fecha dada.
AÑOExtrae el año de una fecha dada.
WEEKDÍADevuelve el día de la semana para una fecha especificada.
HORAExtrae la hora de un tiempo dado.
MINUTOExtrae el minuto de una hora dada.
SEGUNDOExtrae el segundo de una hora dada.
AHORADevuelve la fecha y hora actuales.
ÁREASCuenta el número de rangos individuales dentro de una referencia.
FILASCuenta el número de filas en un rango especificado.
COLUMNASCuenta el número de columnas en un rango especificado.
OFFSETDevuelve una referencia desplazada de una celda especificada un cierto número de filas y columnas.
BUSCARBusca una subcadena dentro de una cadena de texto y devuelve su posición.
TRANSPOSETranspone las filas y columnas de un rango.
ATAN2Calcula la arctangente de unas coordenadas x e y especificadas.
ASINCalcula el arcoseno de un valor especificado.
ACOSCalcula el arcocoseno de un valor especificado.
ELEGIRDevuelve un valor de una lista de valores en función de una posición especificada.
HBUSCARBusca un valor en la fila superior de una tabla o rango y devuelve un valor en la misma columna de una fila especificada.
VBUSCARBusca un valor en la primera columna de una tabla o rango y devuelve un valor en la misma fila de una columna especificada.
ISREFComprueba si un valor es una referencia y devuelve "True" si lo es, o "False" si no lo es.
REGISTROCalcula el logaritmo de un número en una base especificada.
CHARDevuelve el carácter especificado por un número dado.
BAJOConvierte el texto a minúsculas.
SUPERIORConvierte el texto a mayúsculas.
PROPIOEscribe en mayúsculas la primera letra de cada palabra de una cadena de texto.
IZQUIERDAExtrae un número determinado de caracteres del principio de una cadena de texto.
DERECHAExtrae un número determinado de caracteres del final de una cadena de texto.
EXACTOCompara dos cadenas de texto y devuelve "True" si son idénticas, y "False" si no lo son.
TRIMElimina los espacios adicionales de una cadena de texto, excepto los espacios simples entre palabras.
SUSTITUIRSustituye un número especificado de caracteres de una cadena de texto por texto nuevo.
SUSTITUIRSustituye las apariciones de un texto especificado en una cadena de texto por texto nuevo.
CÓDIGODevuelve el valor numérico Unicode del primer carácter de una cadena de texto.
ENCONTRARBusca una subcadena específica dentro de una cadena de texto y devuelve su posición.
ISERRComprueba si un valor es un valor de error distinto de "#N/A" y devuelve "True" si lo es, o "False" si no lo es.
ISTEXTOComprueba si un valor es texto y devuelve "True" si lo es, o "False" si no lo es.
NÚMEROComprueba si un valor es un número y devuelve "True" si lo es, o "False" si no lo es.
ISBLANKComprueba si una celda está vacía y devuelve "True" si lo está, o "False" si no lo está.
TConvierte un valor a formato de texto.
FECHAVALOConvierte una fecha representada como texto en un número de serie de fecha.
LIMPIARElimina los caracteres no imprimibles del texto.
MDETERMCalcula el determinante de una matriz.
MINVERSEDevuelve la inversa multiplicativa (recíproca) de una matriz.
MMULTMultiplica dos matrices entre sí.
IPMTCalcula la parte de intereses del pago de un préstamo durante un periodo determinado.
PPMTCalcula la parte del principal del pago de un préstamo durante un periodo determinado.
CONTARACuenta el número de celdas no vacías de un rango, incluyendo texto y números.
PRODUCTOMultiplica todos los números de un rango.
HECHOCalcula el factorial de un número.
ISNONTEXTOComprueba si un valor no es texto y devuelve "True" si no es texto, o "False" si es texto.
VARPEstima la varianza de una población a partir de una muestra.
TRUNCTrunca un número a un número especificado de decimales.
ISREGISTROICALComprueba si un valor es un valor lógico (booleano) y devuelve "True" si lo es, o "False" si no lo es.
USDOLLARConvierte un número a formato de texto con un símbolo de moneda y dos decimales.
RONDAUPRedondea un número hasta un número especificado de decimales.
RONDADOWNRedondea un número a un número especificado de decimales.
RANKDevuelve el rango de un número en una lista, con opciones para manejar empates.
DIRECCIÓNDevuelve la dirección de la celda como texto basado en los números de fila y columna.
DÍAS360Calcula el número de días entre dos fechas utilizando el año de 360 días.
TODÍADevuelve la fecha actual.
MEDIADevuelve la mediana (valor medio) de un conjunto de números.
SUMPRODUCTOOMultiplica los componentes correspondientes en matrices y devuelve la suma de los productos.
SINHCalcula el seno hiperbólico de un número.
COSHCalcula el coseno hiperbólico de un número.
TANHCalcula la tangente hiperbólica de un número.
ASINHCalcula el seno hiperbólico inverso de un número.
ACOSHCalcula el coseno hiperbólico inverso de un número.
ATANHCalcula la tangente hiperbólica inversa de un número.
Función externaRepresenta una llamada a una función o una operación proporcionada por un complemento externo o una función personalizada.
ERROTYPEDevuelve un número que corresponde al tipo de error en un valor dado.
AVEDEVCalcula la desviación media absoluta de un conjunto de valores respecto a su media.
COMBINCalcula el número de combinaciones para un número dado de elementos tomados de un conjunto mayor.
INCLUSORedondea un número al entero par más próximo.
FLOORedondea un número al múltiplo más cercano de una significación especificada.
TECHORedondea un número al múltiplo más cercano de una significación especificada.
NOMDISTCalcula la función de distribución normal acumulativa para un valor especificado.
NOMSDISTCalcula la función de distribución acumulativa normal estándar.
NOMINVCalcula la inversa de la función de distribución acumulativa normal para una probabilidad especificada.
NOMSINVCalcula la inversa de la función de distribución acumulativa normal estándar.
STYARDIZEConvierte un valor en una distribución normal estándar con una media de 0 y una desviación estándar de 1.
ODDRedondea un número al entero impar más próximo.
POISSONCalcula la probabilidad de la distribución de Poisson para un número dado de sucesos.
TDISTCalcula la distribución t de Student para un valor y unos grados de libertad especificados.
SUMXMY2Calcula la suma de cuadrados de las diferencias entre los valores correspondientes de dos matrices.
SUMX2MY2Calcula la suma de cuadrados de las diferencias entre los valores correspondientes de dos matrices.
SUMX2PY2Calcula la suma de cuadrados de la suma de los valores correspondientes en dos matrices.
INTERCEPTCalcula el punto en el que una línea de tendencia cruza el eje y en un gráfico.
PENDIENTECalcula la pendiente de una línea de tendencia en un gráfico.
DEVSQDevuelve la suma de cuadrados de las desviaciones de los puntos de datos respecto a su media.
SUMSQCalcula la suma de cuadrados de un conjunto de números.
GRANDEDevuelve el valor k-ésimo más grande de un conjunto de datos, donde se especifica k.
PEQUEÑODevuelve el k-ésimo valor más pequeño de un conjunto de datos, donde se especifica k.
PERCENTILEDevuelve el percentil k-ésimo de un conjunto de datos, donde se especifica k.
PERCENTRANKDevuelve el rango de un valor en un conjunto de datos como porcentaje del número total de valores.
MODODevuelve el valor más frecuente en un conjunto de datos.
CONCATENARCombina varias cadenas de texto en una.
POTENCIAEleva un número a una potencia especificada.
RADIANSConvierte grados a radianes.
GRADOSConvierte radianes a grados.
SUBTOTALRealiza varios cálculos (por ejemplo, suma, promedio) en un rango, y puede elegir si desea incluir o excluir otros resultados SUBTOTALES dentro del rango.
SUMSISuma todos los números de un rango que cumplan una condición especificada.
CONTARSICuenta el número de celdas de un rango que cumplen una condición especificada.
CONTARBLANKCuenta el número de celdas vacías en un rango.
ROMANOConvierte un número arábigo en un número romano.
HYPERLINKCrea un hipervínculo a una página web o archivo.
MAXADevuelve el valor máximo de un conjunto de números, incluyendo texto y valores lógicos.
MINADevuelve el valor mínimo de un conjunto de números, incluyendo texto y valores lógicos.

Chaknith Bin

Ingeniero de software

Chaknith es el Sherlock Holmes de los desarrolladores. La primera vez que se le ocurrió que podría tener futuro en la ingeniería de software fue cuando hacía retos de código por diversión. Su trabajo se centra en IronXL e IronBarcode, pero se enorgullece de ayudar a los clientes con todos los productos. Chaknith aprovecha sus conocimientos, adquiridos hablando directamente con los clientes, para ayudar a mejorar los propios productos. Sus comentarios anecdóticos van más allá de los tickets de Jira y apoyan el desarrollo de productos, la documentación y el marketing, para mejorar la experiencia general del cliente.Cuando no está en la oficina, se le puede encontrar aprendiendo sobre aprendizaje automático, codificación y senderismo.