Cómo calcular la curva de Intersecciones en Excel

by admin

Cómo calcular la curva de Intersecciones en Excel

Encontrar la intersección de dos curvas es una forma de encontrar la solución a un sistema de ecuaciones. Excel puede representar gráficamente un sistema de ecuaciones en un gráfico. La intersección de las dos curvas es la solución del sistema de ecuaciones. Si bien no es una función incorporada para calcular la intersección de las dos curvas en Excel, puede utilizar Visual Basic para Aplicaciones (VBA) para encontrar la solución.

Instrucciones

1 Haga clic en la pestaña "desarrolladores" y haga clic en "Visual Basic" para abrir el Editor de Visual Basic.

2 Haga clic en "Insertar" y luego haga clic en "Módulo" para abrir una ventana de módulo en blanco.

3 Copia y pega el siguiente código en la ventana del módulo:
"Encontrar el punto donde se cruzan dos segmentos.
FindLineIntersection Public Sub (_

ByVal x11 As Single, ByVal y11 As Single, _
ByVal x12 As Single, ByVal y12 As Single, _
ByVal x21 As Single, ByVal y21 As Single, _
ByVal x22 As Single, ByVal y22 As Single, _
ByRef inter_x As Single, ByRef inter_y As Single, _
ByRef inter_x1 As Single, ByRef inter_y1 As Single, _
ByRef inter_x2 As Single, ByRef inter_y2 As Single)

dx1 Dim As Single
DY1 Dim As Single
dx2 Dim As Single
dy2 Dim As Single
t1 Dim As Single
t2 Dim As Single
Como denominador Dim individual

' Get the segments' parameters.
dx1 = x12 - x11
dy1 = y12 - y11
dx2 = x22 - x21
dy2 = y22 - y21

'Resolver para t1 y t2.
On Error Resume Next
denominador = (DY1 * dx2 - dx1 * dy2)
t1 = ((x11 - x21) * dy2 + (Y21 - Y11) * dx2) / _
denominador
Si Err.Number & lt;> 0 Then
"Las líneas son paralelas.
inter_x = 1E + 38: inter_y = 1E + 38
inter_x1 = 1E + 38: inter_y1 = 1E + 38
inter_x2 = 1E + 38: inter_y2 = 1E + 38
Exit Sub
Terminara si
On Error GoTo 0
t2 = ((x21 - x11) * DY1 + (Y11 - Y21) * dx1) / _
-denominador

"Encontrar el punto de intersección.
inter_x = x11 + dx1 * t1
inter_y = y11 + DY1 * t1

"Encontrar los puntos más cercanos en los segmentos.
Si t1 & lt; Luego 0
t1 = 0
ElseIf t1> 1 Entonces
t1 = 1
Terminara si
Si t2 & lt; Luego 0
t2 = 0
ElseIf t2> 1 Entonces
t2 = 1
Terminara si
inter_x1 = x11 + dx1 * t1
inter_y1 = y11 + DY1 * t1
inter_x2 = x21 + dx2 * t2
inter_y2 = y21 + dy2 * t2

End Sub

4 Pulse la tecla "F5" para ejecutar la rutina.

Consejos y advertencias

  • Si la ficha Programador no aparece, es posible que tenga que activarlo. Haga clic en el botón "Windows" y haga clic en "Opciones de Excel". Haga clic en la pestaña "populares", a continuación, haga clic en el botón "Mostrar ficha Programador en la cinta de" casilla de verificación y haga clic en "Aceptar".
ETIQUETA: