Отнася се за
Excel за Microsoft 365 Excel 2019 Excel 2016 Excel 2013 Excel 2010

Потребителската функция използва езика на формулата M, приема набор от входни стойности и след това връща една изходна стойност. Ако имате логика, която искате да използвате многократно, или да приложите един и същ набор от трансформации към друга заявка или стойност, помислете за създаване на потребителска функция и след това извикване на функцията къде и кога имате нужда от нея. Има няколко начина за създаване на потребителска функция: 

По-долу е прост пример за потребителска функция, която следва дългогодишна програмна традиция.

  1. За да създадете празна заявка:Избиране    на данни в Excel> Получаване на данни > От други източници > празна заявка.Power Query    Щракнете с десния бутон върху празно място в прозореца Заявки вляво и след това изберете Нова заявка > Други източници > Празна заявка.

  2. В прозореца Заявки отляво щракнете двукратно върху името и след това преименувайте новата празна заявка на "HelloWorld".

  3. Изберете новата заявка и след това изберете Начало > Разширен редактор.

  4. Заместете началния код на шаблона със следния код:

    let      HelloWorld = () => ("Hello World") in      HelloWorld

  5. Изберете Готово.

  6. Променили сте заявката "HelloWorld" на функция по избор. Обърнете внимание, че иконата на функцията Икона "Функция" отляво на нея.

  7. За да извикате функцията, изберете я и след това изберете Извикване във визуализацията на данни.Извикване на потребителската функция HelloWorld

  8. Резултатите от функцията се показват във Визуализация на данни и се добавят към екрана Заявки като заявка с името по подразбиране Извикана функция. Може да искате да го преименувате на нещо по-смислено, като например "HelloWorldResult".

  9. Изберете тази заявка и след това изберете Начало > Затвори & Зареждане , за да видите резултатите в работен лист.

Резултати 

Results of HelloWorld в работен лист

Следващият пример показва как да предадете параметър на потребителска функция, за да преобразувате десетично число в шестнадесетично.

  1. За да създадете празна заявка:Избиране    на данни в Excel> Получаване на данни > От други източници > празна заявка.Power Query    Щракнете с десния бутон върху празно място в прозореца Заявки вляво и след това изберете Нова заявка > Други източници > Празна заявка.

  2. В екрана Заявки отляво преименувайте новата празна заявка на "MyHex".

  3. Изберете новата заявка и след това изберете Начало > Разширен редактор.

  4. Заместете началния код на шаблона със следния код:

    let      MyHex = (parameter1) => Number.ToText(parameter1,"X") in      MyHex

  5. Изберете Готово.

  6. Променили сте заявката "MyHex" на потребителска функция. Обърнете внимание, че иконата на функцията Икона "Функция" отляво на нея.

  7. За да извикате функцията, изберете я и след това в Визуализация на данни въведете число в полето параметър1 и изберете Извикване.

    Извикване на потребителската функция MyHex

  8. Резултатите от функцията се показват във Визуализация на данни и се добавят към прозореца Заявки като заявка с името по подразбиране Извикана функция. Може да искате да го преименувате с нещо по-смислено, като например "MyHexResult".

  9. Изберете тази заявка и след това изберете Начало > Затвори & Зареждане , за да видите резултатите в работен лист.

Резултати 

Резултат от функцията MyHex в работен лист

Ако сте създали функция с поне един параметър, можете да я извикате като потребителска функция, за да създадете нова колона и нова стойност за всеки ред в таблицата.

  1. За да отворите заявка, намерете такава, която преди това е заредена от Редактор на Power Query, изберете клетка в данните и след това изберете Заявка > Редактиране. За повече информация вижте Създаване, редактиране и зареждане на заявка в Excel (Power Query).Бележка    За този пример вашата заявка се нуждае от поне една колона от тип данни "Цяло число" .

  2. Създайте потребителската функция "MyHex", както е обяснено в раздела Създаване и извикване на потребителска функция, която има параметър с Разширен редактор.

  3. В заявката изберете Добавяне на колона > Извикване на потребителска функция. Появява се диалоговият прозорец Извикване на потребителска функция .

  4. Въведете новото име на колона, като например "HexConvert", в полето Име на нова колона .

  5. Изберете името на предварително дефинирана потребителска функция от падащия списък заявка за функция. В този пример изберете "MyHex".

  6. Тъй като потребителската функция препраща към параметър, параметърът сега се показва.

  7. Изберете колона от тип данни "Цяло число" като параметър на функцията.Диалогов прозорец "Извикване на потребителска функция"

  8. Изберете OK.

Result

Създава се нова колона, която показва шестнадесетичната стойност на колоната "Цяло число", която сте въвели като параметър.

Новата колона myHex със стойности в работен лист

Вж. също

помощ за Power Query за Excel

Създаване на формули на Power Query в Excel

Създаване на параметризирана заявка.

Управление на заявки

Разбиране Power Query функциите M (docs.com)

Използване на функции по избор (docs.com)

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.