Option Explicit Function Mezcla(y As Double, x As Range, Constantes As Range) As Double Dim n, m, i, j As Integer Dim A() As Double n = Constantes.Rows.Count 'contar el número de reglones m = Constantes.Columns.Count 'contar el número de columnas ReDim A(m) For j = 1 To m A(j) = 0 For i = 1 To n A(j) = A(j) + x(i).Value * Constantes(i, j).Value Next i Next j Mezcla = 0 For j = 1 To m Mezcla = Mezcla + A(j) * y ^ (j - 1) Next j End Function Function ElemMatriz(n As Integer, m As Integer, Matriz As Range) As Double ElemMatriz = Matriz(n, m).Value End Function Function IntcpT(T As Double, T0 As Double, R As Double, Constantes As Range) _ As Double Dim A, B, C, D, E, tem As Double A = Constantes(1).Value B = Constantes(2).Value C = Constantes(3).Value D = Constantes(4).Value E = Constantes(5).Value tem = A * Log(T / T0) + B * (T - T0) + C / 2 * (T * T - T0 * T0) + D / 3 * (T * T * T - T0 * T0 * T0) _ + E / 4 * (T * T * T * T - T0 * T0 * T0 * T0) IntcpT = R * tem End Function Function Mcp(T As Double, T0 As Double, R As Double, _ Constantes As Range) As Double Dim A, B, C, D, E, tau, tem As Double A = Constantes(1).Value B = Constantes(2).Value C = Constantes(3).Value D = Constantes(4).Value E = Constantes(5).Value tau = T / T0 tem = A + B / 2 * T0 * (tau + 1) + C / 3 * T0 * T0 * (tau * tau + tau + 1) _ + D / 4 * T0 * T0 * T0 * (tau * tau * tau + tau * tau + tau + 1) _ + E / 5 * T0 * T0 * T0 * T0 * (tau * tau * tau * tau + tau * tau * tau _ + tau * tau + tau + 1) Mcp = R * tem End Function Function Cp(T As Double, R As Double, Ccp As Range) As Double Dim A, B, C, D, E, tem As Double A = Ccp(1).Value B = Ccp(2).Value C = Ccp(3).Value D = Ccp(4).Value E = Ccp(5).Value tem = A + B * T + C * T * T + D * T * T * T _ + E * T * T * T * T Cp = R * tem End Function Function Prom(x As Range) As Double 'Funcion fue desarrollada por y para la empresa x '7 de agosto 2020 'Versión 0.01 Dim n, i As Integer Dim suma As Double n = x.Cells.Count 'Función para contar el numero de celdas suma = 0 For i = 1 To n suma = suma + x(i).Value Next i Prom = suma / n End Function Function PromWhile(x As Range) As Double Dim n, i As Integer Dim suma As Double n = x.Cells.Count suma = 0 i = 1 Do While i <= n suma = suma + x(i).Value i = i + 1 Loop PromWhile = suma / n End Function Function PruebaIf(x As Double, Constantes As Range) As String Dim A, B, C As Double A = Constantes(1).Value B = Constantes(2).Value C = Constantes(3).Value If x = A Then PruebaIf = "Uno" ElseIf x = B Then PruebaIf = "Dos" ElseIf x = C Then PruebaIf = "Tres" Else PruebaIf = "Nada" End If End Function