Cómo editar fórmulas de hoja de trabajo en Excel usando C#

Editar fórmulas de Excel en C# con IronXL

This article was translated from English: Does it need improvement?
Translated
View the article in English

Una fórmula de Excel es una expresión que comienza con un signo igual (=) y se utiliza para cálculos matemáticos, manipulación de datos y derivación de resultados basados en los valores de las celdas. Puede contener aritmética, funciones, referencias a celdas, constantes y operaciones lógicas. Las fórmulas permiten actualizaciones dinámicas según los valores de las celdas, convirtiendo a Excel en una herramienta versátil para automatizar tareas. IronXL admite la edición de fórmulas existentes en un archivo de Excel, recuperar el resultado de la fórmula y forzar la re-evaluación del libro de trabajo. Esto asegura que cada fórmula se recalculará para obtener resultados precisos. IronXL admite más de 165 fórmulas.

Inicio rápido: Cambiar una Fórmula de Celda al Instante

Configure o actualice una fórmula utilizando la propiedad Formula de IronXL en cualquier celda. Luego llame a EvaluateAll() para recalcular todas las fórmulas—comenzando rápidamente y asegurando resultados actualizados sin complicaciones.

Nuget IconEmpieza a crear PDF con NuGet ahora:

  1. Instalar IronXL con el gestor de paquetes NuGet

    PM > Install-Package IronXL.Excel

  2. Copie y ejecute este fragmento de código.

    IronXL.WorkBook.Load("MyFile.xlsx").DefaultWorkSheet["B2"].Formula = "=PROMEDIO(C1,C2)";
    workBook.EvaluateAll();
  3. Despliegue para probar en su entorno real

    Empieza a utilizar IronXL en tu proyecto hoy mismo con una prueba gratuita
    arrow pointer


Comience a utilizar IronXL

Ejemplo de edición de fórmulas

Para editar o configurar la fórmula, acceda a la propiedad Formula. Primero, seleccione un Rango o Celda, y luego acceda y configure la propiedad Formula. La propiedad Formula es tanto una propiedad de obtención como de establecimento que devuelve la cadena de fórmula, si la hay. Invoque el método EvaluateAll para re-evaluar 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;

// Load workbook
WorkBook workBook = WorkBook.Load("Book1.xlsx");

// Select worksheet
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Edit or Set formula
workSheet["A4"].Formula = "=SUM(A1,A3)";

// Reevaluate the entire workbook
workBook.EvaluateAll();
Imports IronXL

' Load workbook
Private workBook As WorkBook = WorkBook.Load("Book1.xlsx")

' Select worksheet
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Edit or Set formula
Private workSheet("A4").Formula = "=SUM(A1,A3)"

' Reevaluate the entire workbook
workBook.EvaluateAll()
$vbLabelText   $csharpLabel

Recuperar resultado de la fórmula

Para recuperar el resultado de una fórmula, es preferible usar la propiedad FormattedCellValue de la Celda para un resultado más preciso. Dentro de un Rango seleccionado, puede acceder a la Celda usando el método First, que selecciona el primer elemento de la secuencia, típicamente "A4" en nuestro ejemplo. Desde allí, acceda 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;

// Load workbook
WorkBook workBook = WorkBook.Load("Book1.xlsx");

// Select worksheet
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Retrieve the result value
string value = workSheet["A4"].First().FormattedCellValue;

// Print the result to console
Console.WriteLine(value);
Imports IronXL
Imports System
Imports System.Linq

' Load workbook
Private workBook As WorkBook = WorkBook.Load("Book1.xlsx")

' Select worksheet
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Retrieve the result value
Private value As String = workSheet("A4").First().FormattedCellValue

' Print the result to console
Console.WriteLine(value)
$vbLabelText   $csharpLabel

Fórmula compatible

Excel contiene más de 450 fórmulas que se pueden utilizar para calcular para una variedad de propósitos. IronXL admite alrededor de 165 de las fórmulas más comúnmente utilizadas. Por favor, consulte lo siguiente para las fórmulas admitidas:

Nombre de la fórmula Descripción
abdominalesDevuelve el valor absoluto de un número, sin tener en cuenta su signo.
INTRedondea un número hacia abajo hasta el entero más cercano.
CONTARCuenta la cantidad de celdas que contienen números dentro de un rango específico.
SIRealiza una prueba condicional y devuelve un valor si la condición es verdadera y otro si es falsa.
SUMASuma un rango de números.
PROMEDIOCalcula el promedio de un rango de números.
MÍNIMODevuelve el valor mínimo de un conjunto de números.
MÁXIMODevuelve el valor máximo de un conjunto de números.
FILADevuelve el número de fila de una referencia de celda.
COLUMESODevuelve el número de columna de una referencia de celda.
ESORepresenta un valor de error para "No disponible" o datos faltantes.
VPNCalcula el valor actual neto de una serie de flujos de efectivo a una tasa de descuento específica.
DESVESTCalcula la desviación estándar de un conjunto de números.
FIRMARDevuelve el signo de un número como -1 para negativo, 0 para cero o 1 para positivo.
REDONDORedondea un número a un número específico de decimales.
BUSCARBusca un valor en un rango y devuelve un valor correspondiente de otro rango.
ÍNDICEDevuelve el valor de una celda en una fila y columna especificadas de un rango dado.
REPETIRRepite una cadena de texto un número específico de veces.
MEDIOExtrae una porción de texto de una cadena de texto determinada en función de una posición inicial y una longitud especificadas.
SOLODevuelve el número de caracteres en una cadena de texto.
VALOConvierte una cadena de texto que representa un número en un número real.
VERDADERORepresenta el valor lógico de "Verdadero".
FALSORepresenta el valor lógico de "Falso".
YComprueba si todas las condiciones especificadas son verdaderas y devuelve "Verdadero" si lo son y "Falso" en caso contrario.
OComprueba si al menos una de las condiciones especificadas es verdadera y devuelve "Verdadero" si lo es y "Falso" en caso contrario.
NOInvierte el valor lógico de una condición, convirtiendo "Verdadero" en "Falso" y viceversa.
CONTRADevuelve el resto cuando un número se divide por otro.
DMÍNIMOExtrae el valor mínimo de una base de datos según criterios especificados.
NUESTROCalcula la varianza de un conjunto de números.
TEXTOConvierte un número en texto utilizando un formato específico.
PVCalcula el valor actual de una inversión o préstamo basándose en una serie de flujos de efectivo y una tasa de descuento.
FV (Valor futuro)Calcula el valor futuro de una inversión o préstamo basándose en pagos periódicos y una tasa de interés específica.
NPER (Número de períodos)Determina el número de períodos de pago necesarios para alcanzar una determinada meta financiera, dados pagos regulares y una tasa de interés.
PMT (Pago)Calcula el pago periódico necesario para liquidar un préstamo o inversión, incluido el capital y los intereses.
TASA (Tasa de interés)Calcula la tasa de interés necesaria para alcanzar una meta financiera con una serie de pagos periódicos.
MIRR (Tasa Interna de Retorno Modificada)Calcula la tasa interna de retorno para una serie de flujos de efectivo, abordando múltiples tasas de reinversión y financiamiento.
TIR (Tasa Interna de Retorno)Calcula la tasa interna de retorno de una serie de flujos de efectivo, indicando la tasa a la cual una inversión alcanza el punto de equilibrio.
RYGenera un número decimal aleatorio entre 0 y 1.
FÓSFOOBusca un valor específico 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, los minutos y los segundos.
DÍAExtrae el día de una fecha determinada.
MESExtrae el mes de una fecha determinada.
AÑOExtrae el año de una fecha determinada.
DÍA LABOABLEDevuelve el día de la semana de una fecha especificada.
HOAExtrae la hora de una hora determinada.
MÍNIMOUTOExtrae los minutos de una hora determinada.
SEGUNDOExtrae el segundo de un tiempo determinado.
AHOADevuelve 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.
COLUMESOASCuenta el número de columnas en un rango especificado.
COMPENSARDevuelve un desplazamiento de referencia desde una celda especificada por una cierta cantidad de filas y columnas.
BUSCARBusca una subcadena dentro de una cadena de texto y devuelve su posición.
TRANSPONERTranspone las filas y columnas de un rango.
ATAN2Calcula la arcotangente de una coordenada x e y especificada.
SALCalcula el arcoseno de un valor especificado.
ACOSCalcula el arcocoseno de un valor especificado.
ELEGIRDevuelve un valor de una lista de valores según una posición especificada.
BUSCARBusca un valor en la fila superior de una tabla o rango y devuelve un valor en la misma columna de una fila especificada.
BUSCARVBusca 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 "Verdadero" si lo es o "Falso" si no lo es.
REGISTROCalcula el logaritmo de un número en una base especificada.
CARBONIZARSEDevuelve el carácter especificado por un número dado.
MÁS BAJOConvierte el texto a minúsculas.
SUPERIOConvierte el texto a mayúsculas.
ADECUADOCapitaliza la primera letra de cada palabra en una cadena de texto.
IZQUIERDAExtrae una cantidad específica de caracteres del comienzo de una cadena de texto.
BIENExtrae una cantidad específica de caracteres del final de una cadena de texto.
EXACTOCompara dos cadenas de texto y devuelve "Verdadero" si son idénticas y "Falso" si no lo son.
RECOTARElimina espacios adicionales de una cadena de texto, excepto los espacios individuales entre palabras.
REEMPLAZARReemplaza una cantidad específica de caracteres en una cadena de texto con texto nuevo.
SUSTITUTOReemplaza las ocurrencias de un texto especificado en una cadena de texto con 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 "Verdadero" si lo es o "Falso" si no lo es.
ESTEXTOOComprueba si un valor es texto y devuelve "Verdadero" si lo es o "Falso" si no lo es.
NÚMEROComprueba si un valor es un número y devuelve "Verdadero" si lo es o "Falso" si no lo es.
ES BLANCOComprueba si una celda está vacía y devuelve "Verdadero" si lo está o "Falso" 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.
LIMPIOElimina caracteres no imprimibles del texto.
MDETERMCalcula el determinante matricial de una matriz.
MÍNIMOVERSEDevuelve el inverso multiplicativo (recíproco) de una matriz.
MMULTMultiplica dos matrices entre sí.
IPMTCalcula la parte de interés del pago de un préstamo para un período determinado.
PPMTCalcula la parte principal del pago de un préstamo para un período determinado.
CONTARCuenta la cantidad de celdas no vacías en un rango, incluido texto y números.
PRODUCTOMultiplica todos los números de un rango.
HECHOCalcula el factorial de un número.
ESNOEXTOOComprueba si un valor no es texto y devuelve "Verdadero" si no es texto, o "Falso" si es texto.
ENVÍOEstima la varianza de una población basándose en una muestra.
TROMPATrunca un número a un número específico de decimales.
ISREGISTROICOComprueba si un valor es un valor lógico (booleano) y devuelve "Verdadero" si lo es o "Falso" si no lo es.
Dólares de Estados UnidosConvierte un número a formato de texto con un símbolo de moneda y dos decimales.
REDONDEORedondea un número hasta un número específico de decimales.
REDONDEO HACIA ABAJORedondea un número hacia abajo hasta un número específico de decimales.
RANGODevuelve el rango de un número en una lista, con opciones para manejar empates.
DIRECCIÓNDevuelve la dirección de la celda como texto según 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.
HOYDevuelve la fecha actual.
MEDIAESODevuelve la mediana (valor medio) de un conjunto de números.
SUMAAPRODUCTOOMultiplica los componentes correspondientes en matrices y devuelve la suma de los productos.
ESOCIDOCalcula el seno hiperbólico de un número.
APOREARCalcula el coseno hiperbólico de un número.
TanhCalcula la tangente hiperbólica de un número.
SALHCalcula el seno hiperbólico inverso de un número.
AAPOREARCalcula el coseno hiperbólico inverso de un número.
ATanhCalcula la tangente hiperbólica inversa de un número.
Función externaRepresenta una llamada de función u operación proporcionada por un complemento externo o una función personalizada.
TIPO DE ERRODevuelve un número que corresponde al tipo de error en un valor dado.
AVEDEVCalcula la desviación absoluta promedio de un conjunto de valores con respecto a su media.
combinarCalcula el número de combinaciones para una cantidad determinada de elementos tomados de un conjunto más grande.
INCLUSORedondea un número al entero par más cercano.
PISORedondea un número hacia abajo hasta el múltiplo más cercano de un significado especificado.
TECHORedondea un número al múltiplo más cercano de un significado especificado.
NOMDISTCalcula la función de distribución normal acumulada para un valor especificado.
DISTR.NOM.Calcula la función de distribución acumulativa normal estándar.
DISMÍNIMOUCIÓN NOMÍOLCalcula la inversa de la función de distribución acumulativa normal para una probabilidad especificada.
DISTRIBUCIÓN NOMALCalcula la inversa de la función de distribución acumulativa normal estándar.
ESTYARIZARConvierte un valor a una distribución normal estándar con una media de 0 y una desviación estándar de 1.
EXTRAÑORedondea un número al entero impar más cercano.
PESCADOCalcula la probabilidad de distribución de Poisson para un número determinado de eventos.
DISTRIBUCIÓN TDISTCalcula la distribución t de Student para un valor específico y grados de libertad.
SUMÁXIMOMY2Calcula la suma de los cuadrados de las diferencias entre los valores correspondientes en dos matrices.
SUMÁXIMO2MY2Calcula la suma de los cuadrados de las diferencias entre los valores correspondientes en dos matrices.
SUMÁXIMO2PY2Calcula la suma de los cuadrados de la suma de los valores correspondientes en dos matrices.
INTERCEPTARCalcula 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 los cuadrados de las desviaciones de los puntos de datos con respecto a su media.
SUMASQCalcula la suma de los cuadrados de un conjunto de números.
GRYEDevuelve el k-ésimo valor más grande en un conjunto de datos, donde k es especificado.
PEQUEÑODevuelve el k-ésimo valor más pequeño en un conjunto de datos, donde k está especificado.
PERCENTILDevuelve el percentil k de un conjunto de datos, donde k se especifica.
RANGO POCENTUALDevuelve el rango de un valor en un conjunto de datos como un porcentaje del número total de valores.
CONTRAODevuelve el valor que aparece con mayor frecuencia en un conjunto de datos.
CONCATEESOCombina varias cadenas de texto en una.
FUERZAEleva un número a una potencia especificada.
RADIANESConvierte grados a radianes.
GRADOSConvierte radianes a grados.
TOTAL PARCIALRealiza varios cálculos (por ejemplo, suma, promedio) en un rango y puede elegir si desea incluir o excluir otros resultados TOTAL PARCIALES dentro del rango.
SUMAAR.SISuma todos los números de un rango que cumplen una condición especificada.
CONTAR.SICuenta la cantidad de celdas de un rango que cumplen una condición específica.
CONTAR EN BLANCOCuenta el número de celdas vacías en un rango.
ROMANOConvierte un número arábigo en un número romano.
HIPERENLACECrea un hipervínculo a una página web o un archivo.
QUÉDevuelve el valor máximo de un conjunto de números, incluidos texto y valores lógicos.
MÍODevuelve el valor mínimo de un conjunto de números, incluidos texto y valores lógicos.

Preguntas Frecuentes

¿Cómo puedo editar fórmulas en una hoja de cálculo de Excel usando C#?

Para editar fórmulas en una hoja de cálculo de Excel usando C#, puede utilizar la biblioteca IronXL. Primero, descargue la biblioteca desde NuGet, luego cargue o cree un archivo de Excel. Acceda a la propiedad Formula de una celda o rango para establecer o modificar fórmulas según sea necesario.

¿Cuáles son los pasos para recuperar el resultado de una fórmula en un archivo de Excel usando C#?

Puede recuperar el resultado de una fórmula en un archivo de Excel usando la biblioteca IronXL accediendo a la propiedad FormattedCellValue de la celda. Esta propiedad proporciona el resultado evaluado de la fórmula tal como se muestra en Excel.

¿Cómo puedo asegurarme de que todas las fórmulas en un libro de Excel estén actualizadas después de editarlas?

Utilice el método EvaluateAll de IronXL para reevaluar todas las fórmulas en el libro. Este método asegura que todas las fórmulas se recalculen y reflejen los cambios de datos más recientes.

¿Qué tipos de fórmulas de Excel son compatibles con una biblioteca .NET como IronXL?

IronXL admite más de 165 fórmulas comunes de Excel, incluidas SUM, AVERAGE, IF, COUNT, VLOOKUP, ABS, INT y otras, que abarcan una amplia gama de cálculos aritméticos, pruebas lógicas y análisis estadísticos.

¿Puedo realizar operaciones lógicas en fórmulas de Excel usando una biblioteca C#?

Sí, usando IronXL, puede realizar operaciones lógicas en fórmulas de Excel. Esto le permite crear cálculos dinámicos y basados en condiciones dentro de sus archivos de Excel.

¿Cómo exporto un archivo de Excel editado en C# después de modificar las fórmulas?

Después de editar las fórmulas en su archivo de Excel usando IronXL, puede exportar los cambios utilizando el método SaveAs. Esto le permite guardar el archivo editado en una ubicación especificada en su sistema.

¿Es posible editar las fórmulas de múltiples celdas a la vez utilizando una biblioteca C#?

Sí, con IronXL, puede editar las fórmulas de múltiples celdas o un rango de celdas a la vez al iterar sobre el rango deseado y establecer la propiedad Formula para cada celda.

¿Cuál es la mejor manera de comenzar a editar archivos de Excel en C#?

Para comenzar a editar archivos de Excel en C#, descargue IronXL desde NuGet. Luego, cree un nuevo proyecto, cargue su archivo de Excel y use la API de IronXL para manipular fórmulas y otros datos según sea necesario.

¿Cómo puedo solucionar errores de fórmula en Excel usando una biblioteca C#?

Si encuentra errores de fórmula usando IronXL, asegúrese de que la sintaxis de la fórmula sea correcta, que los datos necesarios estén disponibles en las celdas referenciadas y use el método EvaluateAll para recalcular el libro para mayor precisión.

Chaknith Bin
Ingeniero de Software
Chaknith trabaja en IronXL e IronBarcode. Tiene un profundo conocimiento en C# y .NET, ayudando a mejorar el software y apoyar a los clientes. Sus conocimientos derivados de las interacciones con los usuarios contribuyen a mejores productos, documentación y experiencia en general.
¿Listo para empezar?
Nuget Descargas 1,738,553 | Version: 2025.11 recién lanzado