• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

DETERMINANTMAT in vba

Status
Niet open voor verdere reacties.
Bedankt alphamax.

misschien weet U een mogelijkheid hoe je een "Onderdeterminant" aan de functie MDeterm door geeft.

zie voorbeeld: ik probeer de determnant van de gele cellen te bepalen . zonder ze uit te schrijven in een eigen formule.
 

Bijlagen

  • test MDererm.xlsm
    14,1 KB · Weergaven: 25
ik heb toch maar zelf een function gemaakt die de deel determinanten van een vierkante matrix berekend,
hij geeft de waarde met het juiste teken terug en eventueel maal de waarde van het exclusie punt.

een kleine verbetering als er geen punt wordt ingevuld geeft hij de waarde van de gehele Determinat.
 

Bijlagen

  • mijnDeel determinant.xlsm
    16,9 KB · Weergaven: 32
Laatst bewerkt:
ik laat hem nog even open, ik hoop dat er misschien toch nog een standaard excel functie voor is.
 
Zie cel K2, naar rechts en beneden
Gewoon een de eerste rijen en kolommen doorkopieeren zodat DETERMINANTMAT zijn werk kan blijven doen.
 

Bijlagen

  • Kopie van mijnDeel determinant.xlsm
    16,9 KB · Weergaven: 28
ik wat helemaal verbaasd. maar met een 4x4 determinant kloppen de tekens niet meer. of doe ik iets fout?
 

Bijlagen

  • Kopie van mijnDeel determinant 3.xlsm
    17,9 KB · Weergaven: 38
Laatst bewerkt:
Met deze dezelfde resultaten:

Code:
Function F_snb(sn As Range)
   F_snb = sn * Application.MDeterm(sn.Offset(1, 1).Resize(3, 3))
End Function
 
ja zo krijg je de antwoorden rechts. (met de hulp rijen en kolommen) het is eigenlijk de bedoeling dat je de antwoorden genereert die in het paarse vak staan.
 
Ik kwam tot:

Code:
Function F_snb(y, sp)
  ReDim st(sp.Rows.Count - 2, sp.Columns.Count - 2)
   
  For j = 0 To UBound(st)
    For jj = 0 To UBound(st, 2)
      st(j, jj) = sp.Cells(j Mod (UBound(st) + 1) + y.Row - Cells(1).Row + 1, jj Mod (UBound(st, 2) + 1) + y.Column - sp.Cells(1).Column + 2)
    Next
  Next
   
  F_snb = y * Application.MDeterm(st)
End Function

Met in een cel:

PHP:
=F_snb(V2;$V$2:$Y$5)
PHP:
=F_snb(V3;$V$2:$Y$5)
PHP:
=F_snb(V4;$V$2:$Y$5)
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan