Преминаване към основното съдържание
Поддръжка
Влизане с Microsoft
Влезте или създайте акаунт.
Здравейте,
Изберете друг акаунт.
Имате няколко акаунта
Изберете акаунта, с който искате да влезете.

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

  • Използвайте разширения редактор, за да добавите своя собствена инструкция за оставяне и да започнете от самото начало.

  • Използвайте командата Извикване на потребителска функция.

  • Има допълнителни начини за създаване на функции, които не са обсъдени в тази помощна тема, включително командите Създаване на функция и Добавяне като заявка. За задълбочена дискусия вижте Разбиране на функциите на Power Query M (docs.com)и Използване на функции по избор (docs.com).

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

  1. За да създадете празна заявка:

    Excel      Изберете данни> Получаване на данни > от други източници > празна заявка.

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

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

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

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

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

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

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

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

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

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

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

Резултати 

Резултати от 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. Изберете ОК.

Резултат

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

Новата колона "Моятhex" със стойности в работен лист

Вижте също

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

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

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

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

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

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

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

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

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

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

Беше ли полезна тази информация?

Доколко сте доволни от качеството на езика?
Какво е повлияло на вашия потребителски опит?
Като натиснете „Подаване“, вашата обратна връзка ще се използва за подобряване на продуктите и услугите на Microsoft. Вашият ИТ администратор ще може да събира тези данни. Декларация за поверителност.

Благодарим ви за обратната връзка!

×