Как заставить пользовательскую функцию Excel (UDF) работать в функции массива (CSE)?

Как заставить пользовательскую функцию Excel (UDF) работать в функции массива (CSE)?

Я использую Excel 2010.

Я написал UDF для создания уникального номера для каждого месяца: годмесяц = ​​12*Год(дата) + Месяц(дата)

Теперь я хочу использовать это в CSE: {=sum(if(yearmonth('plan'!$j$3:$j$1000)<>yearmonth(A5),0,'plan'!$k$3:$k$1000))}

Это выводит ошибку #value!. Когда я использую "Evaluate Formula", ошибка #value! появляется, когда Excel пытается вычислить первый массив (yearmonth('plan!$j$3:$j$1000)). Так что, похоже, проблема в использовании моего udf в cse.

UDF прекрасно работает сам по себе (вне cse). Если я уберу UDF и заменю его длинной формой уравнения {=SUM(IF(12*YEAR('Plan'!$J$3:$J$1000)+MONTH('Plan'!$J$3:$J$1000)<>12*YEAR(A5)+MONTH(A5),0,'Plan'!$K$3:$K$1000))}, это тоже прекрасно работает.

Что мне нужно делать?

Заранее спасибо.

Связанный контент