Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Calculo Matricial en El Excel
Calculo Matricial en El Excel
Contenido
1 Operaciones Matriciales en el Excel 3
1.1 Suma y resta . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Multiplicación por escalar . . . . . . . . . . . . . . . . . . . . 4
1.3 Multiplicación de matrices . . . . . . . . . . . . . . . . . . . . 4
1.4 Transponer matrices . . . . . . . . . . . . . . . . . . . . . . . 5
1.5 Determinante de una matriz . . . . . . . . . . . . . . . . . . . 5
1.6 Inversa de una matriz . . . . . . . . . . . . . . . . . . . . . . . 6
1.7 Otras funciones . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.7.1 La función SUMAPRODUCTO . . . . . . . . . . . . . 7
1.7.2 La función SUMAX2MASY2 . . . . . . . . . . . . . . . 7
1.7.3 La función SUMAX2MENOSY2 . . . . . . . . . . . . . 8
1.7.4 La función SUMAXMENOSY2 . . . . . . . . . . . . . 8
2 Aplicaciones 9
2.1 Área de un triángulo . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Volumen de un tetraedro . . . . . . . . . . . . . . . . . . . . . 12
2.3 Generar una matriz identidad de orden n . . . . . . . . . . . . 13
2.4 Sistemas de ecuaciones . . . . . . . . . . . . . . . . . . . . . . 15
2.5 Ecuación de un plano . . . . . . . . . . . . . . . . . . . . . . . 16
2.6 Determinante de la matriz de Vandermonde . . . . . . . . . . 19
Cálculo Matricial en el Excel 3
También se puede optar por el botón ”Insertar función” del menú Fórmulas,
entonces se debe de especificar los rangos en la ventana que se muestra en la
figura 4; sólo que no debe pulsarse el botón ”Aceptar”, si no Ctrl+ Shift+
Enter.
Cálculo Matricial en el Excel 5
57 3 −88
Al ingresar los elementos de P en el rango A1:C4, enseguida se selecciona el
rango E1:H3 y se escribe =TRANSPONER(A1:C4). Luego del consabido Ctrl+
Shift+ Enter se obtiene la transpuesta de P . Ver la figura 5.
22 − 12 =3
(−3)2 − 42 = −7
52 − (−6)2 = −11
72 − 02 = 49
(2 − 1)2 =1
(−3 − 4)2 = 49
(5 − (−6))2 = 121
(7 − 0)2 = 49
2 Aplicaciones
En las siguientes páginas se exponen un conjunto de aplicaciones sencillas,
en estas aplicaciones se utilizan los determinantes de matrices y se sugieren
algunos macros para hacer más interesante este aprendizaje. Debo advertir,
que estos ejemplos de macros pueden ser mejorados ostenciblemente y que
por el tiempo y algunas otras limitaciones, muestro lo básico.
Figura 10: El área de un triángulo con vértices en los puntos (−5, −8), (−7, −6)
y (1, −3) es 11.00u2 .
Sub TRIANGULO()
End Sub
Cálculo Matricial en el Excel 11
Sub TRIANGULO()
Dim rango As Range
Dim det As Double
Dim area As Double
Set rango = Application.InputBox(prompt:="Seleccionar celdas:", _
Title:="Coordenadas de los vértices", Default:=DefaultRange, _
Type:=8)
rango.Select
Hoja1.Cells(4, 1) = "Determinante"
Hoja1.Cells(5, 1) = 1
Hoja1.Cells(5, 2) = rango(1, 1)
Hoja1.Cells(5, 3) = rango(1, 2)
Hoja1.Cells(6, 1) = 1
Hoja1.Cells(6, 2) = rango(2, 1)
Hoja1.Cells(6, 3) = rango(2, 2)
Hoja1.Cells(7, 1) = 1
Hoja1.Cells(7, 2) = rango(3, 1)
Hoja1.Cells(7, 3) = rango(3, 2)
det = Application.WorksheetFunction.MDeterm _
(Range("A5:C7"))
area = 0.5 * Abs(det)
Hoja1.Cells(9, 2) = "Area = "
Hoja1.Cells(9, 3) = area
End Sub
Debo decir que este programa es algo sencillo, puede ser mejorado, pero creo
que sirve para aprender a hacer macros en el Excel. También el lector puede
ingresar las coordenadas de los vértices de un triángulo en otro rango (en
otras celdas) del Excel y siempre será factible ejecutar el macro.
Sub tetraedro()
Dim Rango As Range
Dim det As Double
Dim volumen As Double
DefaultRange = Selection.Address
On Error GoTo Canceled
Set Rango = Application.InputBox(prompt:="Seleccionar celdas:", _
Title:="Coordenatas del tetraedro", Default:=DefaultRange, Type:=8)
Rango.Select
Hoja1.Cells(6, 1) = "Determinante"
Hoja1.Cells(7, 1) = 1
Hoja1.Cells(7, 2) = Rango(1, 1)
Hoja1.Cells(7, 3) = Rango(1, 2)
Hoja1.Cells(7, 4) = Rango(1, 3)
Hoja1.Cells(8, 1) = 1
Hoja1.Cells(8, 2) = Rango(2, 1)
Hoja1.Cells(8, 3) = Rango(2, 2)
Hoja1.Cells(8, 4) = Rango(2, 3)
Hoja1.Cells(9, 1) = 1
Hoja1.Cells(9, 2) = Rango(3, 1)
Hoja1.Cells(9, 3) = Rango(3, 2)
Hoja1.Cells(9, 4) = Rango(3, 3)
Hoja1.Cells(10, 1) = 1
Hoja1.Cells(10, 2) = Rango(4, 1)
Hoja1.Cells(10, 3) = Rango(4, 2)
Hoja1.Cells(10, 4) = Rango(4, 3)
det = Application.WorksheetFunction.MDeterm(Range("A7:D10"))
volumen = 0.5 * abs(det)
Hoja1.Cells(13, 3) = "Volumen="
Hoja1.Cells(13, 4) = volumen
Canceled:
End Sub
Sub IDENTIDAD()
Dim n As Integer
Dim i As Integer
Dim j As Integer
n = InputBox("Ingresar n")
For i = 1 To n
For j = 1 To n
If i = j Then
Hoja1.Cells(i, j) = 1
Else
Hoja1.Cells(i, j) = 0
End If
Next
Next
End Sub
x = A−1 b (6)
Por ejemplo, en una hoja del Excel, hacemos lo siguiente para plantearnos y
resolver un sistema de 4 ecuaciones lineales con 4 incógnitas.
5. No nos olvidemos que al pulsar la tecla Supr sobre una celda vacı́a,
cambiamos los valores de los números aleatorios, es decir, cambiamos
los coeficientes del sistema.
Esto es.
¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯
¯y1 z1 1¯ ¯x1 z1 1¯ ¯x1 y1 1¯ ¯x1 y1 z1 ¯
¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯
¯y2 z2 1¯ x − ¯x2 z2 1¯ y + ¯x2 y2 1¯ z − ¯x2 y2 z2 ¯ = 0 (8)
¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯
¯y3 z3 1¯ ¯x3 z3 1¯ ¯x3 y3 1¯ ¯x3 y3 z3 ¯
4. Agregue ”Controles”.
Range("C1:C3").Copy Range("C17:C19")
’ Escribimos tres textos en tres celdas
Range("E6") = "A = "
Range("E10") = "B = "
Range("E14") = "C = "
Range("E18") = "D = "
’ Calculamos los determinantes
Range("F6") = Application.WorksheetFunction.MDeterm(Range("A5:C7"))
Range("F10") = -Application.WorksheetFunction.MDeterm(Range("A9:C11"))
Range("F14") = Application.WorksheetFunction.MDeterm(Range("A13:C15"))
Range("F18") = -Application.WorksheetFunction.MDeterm(Range("A17:C19"))
End Sub
simplicando,
5x − 4y − 18z − 8 = 0.
Aplicaciones similares a esta, son las siguientes:
1. Hallar la ecuación de una recta que pasa por los puntos (x1 , y1 ) y
(x2 , y2 ). ¯ ¯
¯ x y 1¯
¯ ¯
¯x1 y1 1¯ = 0
¯ ¯
¯x2 y2 1¯
Donde xi 6= xj si i 6= j.
Se puede agregar un botón de comando a la hoja de trabajo del Excel para
generar una matriz de Vandermonde de orden 3 con tres números que se
hayan ingresado en las celdas A1:A3. El código de este botón es:
Hoja1.Cells(i, 3) = Hoja1.Cells(i - 4, 1) ^ 2
Next
’ Calculamos el determinante
Range("E5") = "Det."
Range("E6") = Application.WorksheetFunction.MDeterm(Range("A5:C7"))
End Sub
Al ingresar, por ejemplo, los números: 5.6, 7.8, 9.1 y luego pulsar el botón,
aparece el resultado que se muestra en la figura 20. Esto significa que:
¯ ¯
¯1 5.6 31.36¯
¯ ¯
¯1 7.8 60.84¯ = 10.01
¯ ¯
¯1 9.1 82.81¯