Greg_Deckler's avatar
Greg_Deckler
Community Champion
6 years ago

IMPRODUCT

In my recent quest to create or catalog as many DAX equivalents for Excel functionswas able to leverage COMPLEXIMAGINARY and IMREAL into IMPRODUCT.

IMPRODUCT = 
    VAR __Real1 = [IMREAL1]
    VAR __Real2 = [IMREAL2]
    VAR __i1 = [IMAGINARY1]
    VAR __i2 = [IMAGINARY2]
    VAR __Real = __Real1 * __Real2 - __i1 * __i2
    VAR __i = __Real1 * __i2 + __i1 * __Real2
    VAR __suffix = IF(MAX([suffix])="","i",MAX([suffix]))
RETURN
    SWITCH(TRUE(),
        __Real = 0 && __i = 1, __suffix,
        __Real = 0 && __i = -1, "-" & __suffix,
        __Real = 0, __i & __suffix,
        __i = 0, __Real & "",
        __i < 0 && __i = -1, __Real & "-" & __suffix,
        __i < 0, __Real & "-" & ABS(__i) & __suffix,
        __i = 1, __Real & "+" & __suffix,
        __Real & "+" & __i & __suffix
    )

No RepliesBe the first to reply