Calculating CGT (Capital Gain Tax)

mwvirk

Board Regular
Joined
Mar 2, 2011
Messages
247
Office Version
  1. 2016
Platform
  1. Windows
Hello

I am using the following formula to calculate the CGT (capital gain tax)
if sold items are before 01-Jul-2021 then CGT will be 15%
but if sold after 01-Jul-2021 then CGT is 12.5%
i was hoping that in future CGT % might change so i gave a approx. date 01-Jul-2030 to charge CGT by 10%

=IF(BK2<0,0,IF(AC2<DATE(2021,7,1),BK2*15%,IF(AND(AC2>=DATE(2021,7,1),AC2<DATE(2030,7,1)),BK2*12.5%,BK2*10%)))

but the things went in other way and it's totally confusing since the new scenario is as below:

Where the security is acquired on or before June 30, 2022 12.5% CGT will be charged

Where the security is acquired on or after July 1, 2022:
Where the holding period does not exceed one year 15.0% CGT will be charged
Where the holding period exceeds one year but does not exceed two years 12.5% CGT will be charged
Where the holding period exceeds two years but does not exceed three years 10.0% CGT will be charged
Where the holding period exceeds three years but does not exceed four years 7.50% CGT will be charged
Where the holding period exceeds four years but does not exceed five years 5.00% CGT will be charged
Where the holding period exceeds five years but does not exceed six years 2.50% CGT will be charged
Where the holding period exceeds six years 0.00% CGT will be charged

please help me if this can be done by updating my exiting conditions and formula.

Thank you
 

Excel Facts

VLOOKUP to Left?
Use =VLOOKUP(A2,CHOOSE({1,2},$Z$1:$Z$99,$Y$1:$Y$99),2,False) to lookup Y values to left of Z values.
T202209a.xlsm
ABCDEF
1Date purchased22-Sep-22Date of sale31-Dec-264
2Date30-Jun-22
3
4
5015.0%
6112.5%
7210.0%
837.5%
945.0%
1052.5%
1160.0%
12
13Tax5.0%5.0%5.0%
3b
Cell Formulas
RangeFormula
F1F1=DATEDIF(B1,E1,"y")
B13B13=IF(B1<=B2,0.125,LOOKUP((E1-B1)/365,B5:C11))
C13C13=IF(B1<=B2,0.125,LOOKUP(F1,B5:C11))
D13D13=IF(B1<=B2,0.125,LOOKUP(DATEDIF(B1,E1,"y"),B5:C11))
 
Upvote 0
Try the alternatives that you prefer

T202209a.xlsm
ABCDEF
1Date purchased22-Sep-22Date of sale31-Dec-220
2Date30-Jun-22
3
4
500.15
610.125
720.1
830.075
940.05
1050.025
1160
12
13Tax15.0%15.0%15.0%15.0%15.0%
14
3b
Cell Formulas
RangeFormula
F1F1=DATEDIF(B1,E1,"y")
B13B13=IF(B1<=B2,0.125,LOOKUP((E1-B1)/365,B5:C11))
C13C13=IF(B1<=B2,0.125,LOOKUP(F1,B5:C11))
D13D13=IF(B1<=B2,0.125,LOOKUP(DATEDIF(B1,E1,"y"),B5:C11))
E13E13=IF(B1<=B2,0.125,LOOKUP(DATEDIF(B1,E1,"y"),{0,0.15;1,0.125;2,0.1;3,0.075;4,0.05;5,0.025;6,0}))
F13F13=IF(B1<=B2,0.125,MAX(0,0.15-(DATEDIF(B1,E1,"y")>0)*DATEDIF(B1,E1,"y")*0.025))
 
Upvote 0
Thanks, Dave. is it possible to add more conditions in the existing formula so I don't have to add more cells

=IF(BK2<0,0,IF(AC2<DATE(2021,7,1),BK2*15%,IF(AND(AC2>=DATE(2021,7,1),AC2<DATE(2030,7,1)),BK2*12.5%,BK2*10%)))

if you can update the above formula that can cover all the tax slabs
Where the security is acquired on or before June 30, 2022 12.5% CGT will be charged
Where the security is acquired on or after July 1, 2022:

maybe we can count the number of days. like if buying date and selling date are less than 365 days then it will consider less than 1 year
if buying date - sell date = more than 365 but less than 730 then it will fall in the next category and so on.

because I can change the old rules and charges I have already paid:
if sold items are before 01-Jul-2021 then CGT will be 15%
but if sold after 01-Jul-2021 then CGT is 12.5%


ProfitCGT 15% Charges By NCCPL (Updated To 12.5%)Balance Profit After CGT Charges
-2,146.4285​
0.0000​
-2,146.4285​
17.0515​
2.5577​
14.4938​
512.2751​
76.8413​
435.4338​
-1,702.0083​
0.0000​
-1,702.0083​
351.3905​
52.7086​
298.6819​
 
Last edited:
Upvote 0
Did you try any of my suggestions?

N.B. You can download the suggestion. Click the icon below the f(x) in the header and paste to a clean sheet.

Review the formulas with formulas evaluate Formula.
T202209a.xlsm
ABCDEFG
1Date purchased44814Date of sale463874
2Date44742
3
400.15
510.125
620.1
730.075
840.05
950.025
1060
11
12Tax0.050.050.05
13
3b
Cell Formulas
RangeFormula
F1F1=DATEDIF(B1,E1,"y")
C12C12=IF(E1<=B2,0.15,IF(B1<=B2,0.125,LOOKUP(F1,B4:C10)))
D12D12=IF(E1<=B2,0.15,IF(B1<=B2,0.125,LOOKUP(DATEDIF(B1,E1,"y"),B4:C10)))
G12G12=IF(E1<=B2,0.15,IF(B1<=B2,0.125,LOOKUP(F1,aL)))


N.B, The formula in G12 uses named information; the lookup information is named.
 
Last edited:
Upvote 0
Did you try any of my suggestions?

N.B. You can download the suggestion. Click the icon below the f(x) in the header and paste to a clean sheet.

Review the formulas with formulas evaluate Formula.
T202209a.xlsm
ABCDEFG
1Date purchased44814Date of sale463874
2Date44742
3
400.15
510.125
620.1
730.075
840.05
950.025
1060
11
12Tax0.050.050.05
13
3b
Cell Formulas
RangeFormula
F1F1=DATEDIF(B1,E1,"y")
C12C12=IF(E1<=B2,0.15,IF(B1<=B2,0.125,LOOKUP(F1,B4:C10)))
D12D12=IF(E1<=B2,0.15,IF(B1<=B2,0.125,LOOKUP(DATEDIF(B1,E1,"y"),B4:C10)))
G12G12=IF(E1<=B2,0.15,IF(B1<=B2,0.125,LOOKUP(F1,aL)))


N.B, The formula in G12 uses named information; the lookup information is named.



i tried to apply the multiple conditions since i need the results in the exiting cell and not possible to add extra cells. here is the formula i tried:

IF(BK2<0,0,IF(AC2<DATE(2021,7,1),BK2*15%,IF(AND(AC2>=DATE(2021,7,1),AC2<DATE(2022,7,1)),BK2*12.5%,IF(AND(AC2>=DATE(2022,7,1),AC2-E2<365),BK2*15%,IF(AND(AC2>=DATE(2021,7,1),AND(AC2-E2>365,AC2-E2<=730)),BK2*12.5%,IF(AND(AC2>=DATE(2021,7,1),AND(AC2-E2>730,AC2-E2<=1095)),BK2*10%,IF(AND(AC2>=DATE(2021,7,1),AND(AC2-E2>1095,AC2-E2<=1460)),BK2*7.5%,IF(AND(AC2>=DATE(2021,7,1),AND(AC2-E2>1460,AC2-E2<=1825)),BK2*5%,IF(AND(AC2>=DATE(2021,7,1),AND(AC2-E2>1825,AC2-E2<=2190)),BK2*2.5%,BK2*0%)))))))))


now if is it possible to reduce the length and any other alternative w/o adding new cells?


this was the requirement:

if sold items are before 01-Jul-2021 then CGT will be 15%
but if sold after 01-Jul-2021 then CGT is 12.5%
i was hoping that in future CGT % might change so i gave a approx. date 01-Jul-2030 to charge CGT by 10%

=IF(BK2<0,0,IF(AC2<DATE(2021,7,1),BK2*15%,IF(AND(AC2>=DATE(2021,7,1),AC2<DATE(2030,7,1)),BK2*12.5%,BK2*10%)))

but the things went in other way and it's totally confusing since the new scenario is as below:

Where the security is acquired on or before June 30, 2022 12.5% CGT will be charged

Where the security is acquired on or after July 1, 2022:
Where the holding period does not exceed one year 15.0% CGT will be charged
Where the holding period exceeds one year but does not exceed two years 12.5% CGT will be charged
Where the holding period exceeds two years but does not exceed three years 10.0% CGT will be charged
Where the holding period exceeds three years but does not exceed four years 7.50% CGT will be charged
Where the holding period exceeds four years but does not exceed five years 5.00% CGT will be charged
Where the holding period exceeds five years but does not exceed six years 2.50% CGT will be charged
Where the holding period exceeds six years 0.00% CGT will be charged




thank you
 
Upvote 0
The named information is mentioned in the earlier posts. In Formulas Name Manager, the Lookup information is named aL and the value is ={0,0.15;1,0.125;2,0.1;3,0.075;4,0.05;5,0.025;6,0}.

T202209a.xlsm
HIJKLM
1
2Date30-Jun-22
3
4
5Puchase DateAmountSale DateAmountProfitTax
65-May-2010,000.005-Jun-2215,000.005,000.00750.00
75-May-2020,000.0031-Dec-2232,000.0012,000.001,500.00
85-Jul-2230,000.0031-Dec-2332,000.002,000.00250.00
99-Sep-22100,000.0031-Dec-32140,000.0040,000.000.00
10
3b
Cell Formulas
RangeFormula
L6:L9L6=K6-I6
M6:M9M6=IF(J6<=$I$2,0.15,IF(H6<=$I$2,0.125,LOOKUP(DATEDIF(H6,J6,"y"),aL)))*L6


Does the above provide the correct results?

If you want us to edit your formula, please post an extract of your sheet with the forum's tool named XL2BB.
 
Last edited:
Upvote 0
You can put the date June 30, 2022 in the formula or name the information.
 
Upvote 0
The named information is mentioned in the earlier posts. In Formulas Name Manager, the Lookup information is named aL and the value is ={0,0.15;1,0.125;2,0.1;3,0.075;4,0.05;5,0.025;6,0}.

T202209a.xlsm
HIJKLM
1
2Date30-Jun-22
3
4
5Puchase DateAmountSale DateAmountProfitTax
65-May-2010,000.005-Jun-2215,000.005,000.00750.00
75-May-2020,000.0031-Dec-2232,000.0012,000.001,500.00
85-Jul-2230,000.0031-Dec-2332,000.002,000.00250.00
99-Sep-22100,000.0031-Dec-32140,000.0040,000.000.00
10
3b
Cell Formulas
RangeFormula
L6:L9L6=K6-I6
M6:M9M6=IF(J6<=$I$2,0.15,IF(H6<=$I$2,0.125,LOOKUP(DATEDIF(H6,J6,"y"),aL)))*L6


Does the above provide the correct results?

If you want us to edit your formula, please post an extract of your sheet with the forum's tool named XL2BB.

Thanks, Dave for giving your valuable time. it's working fine for me.
 
Upvote 0

Forum statistics

Threads
1,214,613
Messages
6,120,515
Members
448,968
Latest member
Ajax40

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top