Forum Discussion

vaphaet's avatar
vaphaet
Copper Contributor
May 04, 2023

Named table reference not working after expanding the named table with more rows

I have multiple named tables across multiple sheets.   When I created the below function, it worked as intended. Then I inserted extra row to the referenced (Havi_Bér) named table. It visually show...
  • SergeiBaklan's avatar
    SergeiBaklan
    May 08, 2023

    vaphaet 

    Have no idea why, but you use binary search in XMATCH() /4th parameter/ which assumes sorting of data source. Try to sort Havi_Bér[Munkavállaló] in ascending order and you have totally different result.

    I'd use default search mode like

    =CONCATENATE(
        IF(
            INDEX(
                Havi_Bér[Szabadság],
                XMATCH($C$1, Havi_Bér[Kezdete]) *
                    XMATCH([@Név], Havi_Bér[Munkavállaló])
            ) > 0,
            INDEX(
                Havi_Bér[Szabadság],
                XMATCH($C$1, Havi_Bér[Kezdete]) *
                    XMATCH([@Név], Havi_Bér[Munkavállaló])
            ),
            ""
        ),
        IF(
            INDEX(
                Havi_Bér[Szabadság],
                XMATCH($C$1, Havi_Bér[Kezdete]) *
                    XMATCH([@Név], Havi_Bér[Munkavállaló])
            ) > 0,
            " nap, ",
            ""
        ),
        IF(
            INDEX(
                Havi_Bér[Apanap],
                XMATCH($C$1, Havi_Bér[Kezdete]) *
                    XMATCH([@Név], Havi_Bér[Munkavállaló])
            ) > 0,
            INDEX(
                Havi_Bér[Apanap],
                XMATCH($C$1, Havi_Bér[Kezdete]) *
                    XMATCH([@Név], Havi_Bér[Munkavállaló])
            ),
            ""
        ),
        IF(
            INDEX(
                Havi_Bér[Apanap],
                XMATCH($C$1, Havi_Bér[Kezdete]) *
                    XMATCH([@Név], Havi_Bér[Munkavállaló])
            ) > 0,
            " apanap",
            ""
        )
    )

    The same for Fizetendő, like

    =XLOOKUP(
        [@Munkavállaló],
        Munkavállalók_Táblája[Név],
        Munkavállalók_Táblája[Alapbér],
        "Munkavállaló neve nem található a Munkavállalók_Táblája tábla Név oszlopában"
    ) *
        (
            1 -
                (
                    [@[Fizetés nélküli nap]] + [@Apanap] * 0.6 +
                        [@[Beteg szabadság]] * 0.3
                ) / [@[Tárgyhavi Munkanap]]
        ) + [@Túlóra] + [@[Utazási Támogatás]] - [@[Egyéb csökkentő]] +
        [@[Egyéb növelő]]

    Not sure about other formulae, but you have to be careful with binary search.

Resources