Diffiniad, Defnyddiau ac Enghreifftiau o Swyddogaethau yn Excel

Mae swyddogaeth yn fformiwla rhagosodedig yn Excel and Google Sheets y bwriedir iddo wneud cyfrifiadau penodol yn y gell y mae wedi'i leoli ynddo.

Cystrawen a Dadleuon Swyddogaeth

Mae cystrawen swyddogaeth yn cyfeirio at gynllun y swyddogaeth ac yn cynnwys enw'r swyddogaeth, cromfachau, gwahanyddion coma a dadleuon .

Fel pob fformiwlâu, mae swyddogaethau'n dechrau gyda'r arwydd cyfartal ( = ) ac yna enw'r swyddogaeth a'i dadleuon:

Er enghraifft, un o'r swyddogaethau mwyaf a ddefnyddir yn Excel a Google Sheets yw'r swyddogaeth SUM :

= SUM (D1: D6)

Yn yr enghraifft hon,

Swyddogaethau Nestio mewn Fformiwlâu

Gellir ehangu defnyddioldeb swyddogaethau adeiledig Excel trwy nythu un neu ragor o swyddogaethau y tu mewn i swyddogaeth arall mewn fformiwla. Effaith swyddogaethau nythu yw caniatáu i gyfrifiadau lluosog ddigwydd mewn un cil gwaith.

Er mwyn gwneud hyn, mae'r swyddogaeth nythu yn gweithredu fel un o'r dadleuon ar gyfer y brif swyddogaeth neu'r mwyaf eithaf.

Er enghraifft, yn y fformiwla ganlynol, mae'r swyddogaeth SUM wedi'i nythu y tu mewn i swyddogaeth ROUND .

Cyflawnir hyn trwy ddefnyddio'r swyddog SUM fel dadl Rhif swyddogaeth ROUND.

& # 61; ROUND (SUM (D1: D6), 2)

Wrth arfarnu swyddogaethau nythu, mae Excel yn ymgymryd â'r swyddogaeth ddyfnaf, neu fewnol, yn gyntaf ac wedyn yn gweithio ei ffordd allan. O ganlyniad, bydd y fformiwla uchod yn awr:

  1. darganfyddwch swm y gwerthoedd yng nghelloedd D1 i D6;
  2. rownd y canlyniad hwn i ddau le degol.

Ers Excel 2007, caniateir hyd at 64 lefel o swyddogaethau nythu. Mewn fersiynau cyn hyn, caniatawyd 7 lefel o swyddogaethau nythu.

Taflen Waith yn erbyn Functions Custom

Mae dwy ddosbarth o swyddogaethau yn Excel and Google Sheets:

Swyddogaethau'r daflen waith yw'r rhai sy'n brodorol i'r rhaglen, megis y swyddogaethau SUM a ROUND a drafodir uchod.

Ar y llaw arall mae swyddogaethau personol yn swyddogaethau sy'n cael eu hysgrifennu neu eu diffinio gan y defnyddiwr.

Yn Excel, mae swyddogaethau arfer yn cael eu hysgrifennu yn yr iaith raglennu adeiledig: Visual Basic ar gyfer Ceisiadau neu VBA ar gyfer byr. Crëir y swyddogaethau gan ddefnyddio'r golygydd Visual Basic a leolir ar daf Datblygwr y rhuban .

Mae swyddogaethau arfer Google Sheets wedi'u hysgrifennu yn Apps Script - ffurf o JavaScript - ac fe'u crëir gan ddefnyddio'r golygydd sgriptiau sydd wedi'u lleoli o dan y ddewislen Tools .

Fel arfer, mae swyddogaethau arfer fel arfer, ond nid bob amser, yn derbyn rhyw fath o fewnbwn data ac yn dychwelyd canlyniad i'r gell lle mae wedi'i leoli.

Isod mae enghraifft o swyddogaeth a ddiffiniwyd gan ddefnyddiwr sy'n cyfrifo gostyngiadau prynwr a ysgrifennwyd yn y cod VBA. Cyhoeddir y swyddogaethau gwreiddiol a ddefnyddiwyd gan ddefnyddiwr, neu UDF ar wefan Microsoft:

Disgownt Swyddogaeth (maint, pris)
Os yw maint> = 100 Yna
Disgownt = maint * pris * 0.1
Else
Disgownt = 0
Diwedd Os
Disgownt = Application.Round (Disgownt, 2)
Swyddogaeth Diwedd

Cyfyngiadau

Yn Excel, gall swyddogaethau a ddiffiniwyd gan ddefnyddwyr ddim ond dychwelyd gwerthoedd i'r gell (au) y maent wedi'u lleoli ynddynt. Wrth wneud hynny, ni allant weithredu gorchmynion sydd mewn unrhyw ffordd yn newid amgylchedd gweithredu Excel - megis addasu cynnwys neu fformatio cell.

Mae sylfaen wybodaeth Microsoft yn rhestru'r cyfyngiadau canlynol ar gyfer swyddogaethau diffiniedig defnyddwyr:

Swyddogaethau Diffiniedig Defnyddwyr yn erbyn Macros yn Excel

Er nad yw Google Sheets yn eu cefnogi ar hyn o bryd, yn Excel, mae macro yn gyfres o gamau a gofnodwyd sy'n awtomeiddio tasgau taflenni gwaith ailadroddus - megis fformatio data neu weithrediadau copi a gludo - trwy efelychu camau atal neu gamau llygoden.

Er bod y ddau yn defnyddio iaith raglennu VBA Microsoft, maent yn wahanol mewn dwy ffordd:

  1. Mae UDF yn cyflawni cyfrifiadau tra bod macros yn gweithredu. Fel y crybwyllwyd uchod, ni all UDF gyflawni gweithrediadau sy'n effeithio ar amgylchedd y rhaglen tra gall macros wneud hynny.
  2. Yn y ffenestr golygydd Visual Basic, gellir gwahaniaethu'r ddau oherwydd:
    • Mae UDF yn cychwyn gyda datganiad Swyddogaeth ac yn dod i ben gyda End Function ;
    • Mae Macros yn dechrau gydag Is- ddatganiad ac yn dod i ben gyda End Is .