Prasības:
- pamatzināšanas par vba
- tabulu/nosaukto diapazonu izmantošana
Strādājot ar ieslēgtām un izslēgtām darbgrāmatām, dažreiz mēneši starp darbgrāmatas atkārtotu apmeklējumu var būt grūti atcerēties datu struktūru un formulu.
Šādi es risinu šo problēmu un nodrošinu, ka dažu minūšu laikā man būs pārskats par veiktajiem aprēķiniem.
Šajā piemērā es parādīšu, kā var vienkāršot prēmiju aprēķināšanas formulu.
Formulas izskats bez galda vai UDF
Formula:
= IF (SUM (C2/D2) = 3; SUM ((C2-D2)*0,03); IF (UN (SUM (C2/D2)> 1; SUM (C2/D2) <3) = PATIESA); SUM ((C2-D2)*0,02); 1)))
Šīs formulas loģiku no pirmā acu uzmetiena var būt grūti iegūt.
Formulas izskats ar tabulu un bez UDF
Formula:
= JA (SUM ([@[Gada pārdošanas apjoms]]/[@Alga]) = 3; SUM (([[[Gada pārdošanas apjoms]]-[@Alga])*0,03); JA (UN (SUM ([ @[Gada pārdošanas apjoms]]/[@Alga])> 1; SUM ([@[Gada pārdošanas apjoms]]/[@Alga]) <3) = TRUE; SUM (([[[Gada pārdošanas apjoms]]-[@Alga) ])*0,02); 1)))
Izmantojot tabulas, tas kļuva nedaudz vieglāk lasāms, jo esat informēts par aprēķinā izmantotajām šūnām
Formulas izskats ar tabulu un UDF
Modulī ievietota lietotāja definēta funkcija:
"Man drīzāk būs gari un aprakstoši funkciju nosaukumi, nevis īsi un neaprakstoši nosaukumi
Funkcija calc_salary_to_sale_ratio_and_return_bonus (gadāPārdošana kā dubultā, alga kā dubultā) kā dubultā
Dim alga_to_sale_ratio Kā dubultā
Dim bonus_factor Kā dubultā
Dim return_bonus Kā dubultā
alga_pārdošanas_ attiecība = gadaPārdošana / alga
Atlasiet Gadījuma alga_pārdošanas_attiecība
1. līdz 3. gadījums
bonusa_faktors = 0,02
Lieta ir> 3
bonusa_faktors = 0,03
Cita lieta
bonusa_faktors = 0#
Beigas Atlasīt
return_bonus = (gada pārdošana - alga) * bonus_faktors
calc_salary_to_sale_ratio_and_return_bonus = atgriešanās bonuss
Beigu funkcija
Funkcijas izmantošana
Formula:= aprēķināt_atalgojumu_pārdot_nosaukumu_un_atgriezties_bonus ([@[Gada pārdošanas apjoms]]; [@Alga])Tas precīzi parāda, kas notiek no pirmā acu uzmetiena, un jūs vienmēr varat iedziļināties kodā, lai izlasītu specifiku. Pievienotais ir fails, kas parāda visus trīs scenārijus