Forklarende formler

Anonim

Krav:

- Grundlæggende viden om vba
- Brug af tabeller/navngivne områder

Når du arbejder med projektmapper til og fra, nogle gange måneder mellem genbesøg af projektmappen kan det være svært at huske datastrukturen og formlen, der er oprettet.
Sådan omgås dette problem og sikrer, at jeg inden for få minutter får et overblik over de udførte beregninger.
I dette eksempel vil jeg vise, hvordan en formel til beregning af bonusser kan forenkles.

Formeludseende uden bord eller UDF

Formel:

= HVIS (SUM (C2/D2) = 3; SUM ((C2-D2)*0,03); HVIS (OG (SUM (C2/D2)> 1; SUM (C2/D2) <3) = SAND; SUM ((C2-D2)*0,02); 1))))

Logikken i denne formel kan være svær at udtrække ved første øjekast.

Formeludseende med bord og uden UDF

Formel:

= HVIS (SUM ([@[Årligt salg]]/[@Løn]) = 3; SUM (([@[Årligt salg]]-[@Løn])*0,03); HVIS (OG (SUM ([ @[Årligt salg]]/[@Løn])> 1; SUM ([@[Årligt salg]]/[@Løn]) <3) = SAND; SUM (([@[Årligt salg]]-[@Løn ])*0,02); 1)))

Med tabeller blev det bare lidt lettere at læse, da du bliver informeret om de celler, der blev brugt i beregningen

Formeludseende med bord og UDF

Brugerdefineret funktion indsat i et modul:

'Jeg vil hellere have lange og beskrivende funktionstitler end korte og ubeskrivende titler
Funktion beregne_løn_til_salg_forhold_og_return_bonus (årligtSalg som dobbelt, løn som dobbelt) som dobbelt

Dim løn_til_salgsforhold som dobbelt
Dim bonus_factor som dobbelt
Dim return_bonus som dobbelt

løn_til_salgsforhold = årligSalg / løn

Vælg Sag løn_til_salgsforhold
Sag 1 til 3
bonus_faktor = 0,02
Sag er> 3
bonus_faktor = 0,03
Sag ellers
bonus_faktor = 0#
Afslut Vælg

return_bonus = (yearlySales - løn) * bonus_factor

calculate_salary_to_sale_ratio_and_return_bonus = return_bonus

Afslut funktion

Brug af funktionen

Formel:= beregne_løn_til_salg_forhold_og_return_bonus ([@[Årligt salg]]; [@Løn])Dette fortæller dig præcis, hvad der sker ved første øjekast, og du kan altid gå dybere ind i koden for at læse detaljerne. Vedhæftet er en fil, der viser alle tre scenarier