vinden van het snijpunt van beide curven is een manier om de oplossing van een stelsel van vergelijkingen voorbeeld. Excel kan een stelsel van vergelijkingen plot op een grafiek . Het snijpunt van beide curven is de oplossing voor het stelsel vergelijkingen . Hoewel er geen ingebouwde functie om het snijpunt van twee curven in Excel te berekenen , kunt u Visual Basic for Applications ( VBA ) om de oplossing te vinden . Instructies 1 Klik op het tabblad " Developer " en klik op " Visual Basic " om de Visual Basic Editor te openen . Kopen van 2 Klik op " Invoegen " en vervolgens klik "Module " om een blanco module venster openen Kopieer 3 en plak de volgende code in het module venster : . 'Zoek het punt waar twee segmenten intersect.Public Sub FindLineIntersection ( _ByVal x11 Als Single , ByVal Y11 Zoals Single , _ByVal x12 Zoals Single , ByVal Y12 Zoals Single , _ByVal x21 Zoals Single , ByVal Y21 Zoals Single , _ByVal x22 Zoals Single , ByVal y22 Zoals Single , _ByRef inter_x Zoals Single , ByRef inter_y Zoals Single , _ByRef inter_x1 Zoals Single , ByRef inter_y1 Zoals Single , _ByRef inter_x2 Zoals Single , ByRef inter_y2 Zoals Single ) Dim dx1 Zoals SingleDim DY1 Zoals SingleDim dx2 Zoals SingleDim dy2 Zoals SingleDim t1 Zoals SingleDim t2 Als SingleDim noemer Zoals Single ' Krijg de segmenten ' parameters.dx1 = x12 - x11dy1 = y12 - y11dx2 = x22 - x21dy2 = Y22 - Y21 ' Solve voor t1 en t2.On Error Resume Nextdenominator = ( DY1 * dx2 - dx1 * dy2 ) t1 = ( ( x11 - x21 ) * dy2 + ( y21 - Y11 ) * dx2 ) /_denominatorIf Err.Number < > 0 Then ' De lijnen zijn parallel.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 SubEnd Ifon Error GoTo 0t2 = ( ( x21 - x11 ) * DY1 + ( Y11 - Y21 ) * dx1 ) /_ - deler ' zoeken het punt van intersection.inter_x = x11 + dx1 * t1inter_y = y11 + DY1 * t1 ' Zoek de dichtstbijzijnde punten op de segments.If t1 < 0 Thent1 = 0ElseIf t1 > 1 Thent1 = 1End IFIF t2 < 0 Thent2 = 0ElseIf t2 > 1 Thent2 = 1End Ifinter_x1 = x11 + dx1 * t1inter_y1 = y11 + DY1 * t1inter_x2 = x21 + dx2 * t2inter_y2 = y21 + dy2 * t2End Sub Press 4 " F5 " om de routine te draaien .
|