0% found this document useful (0 votes)
352 views

10a Vbafunctions

Excel uses functions to do most calculations =SUM(x) =COUNTIF(x,y) =VLOOKUP(x, y, z) We can write our own functions in Visual Basic. E.g. If you want to calculate the price of a share using the Dividend Growth model you can write a function which will do the following calculation and return the result DGMPrice = dividend / (InterestRate, GrowthRate)

Uploaded by

api-200202067
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
352 views

10a Vbafunctions

Excel uses functions to do most calculations =SUM(x) =COUNTIF(x,y) =VLOOKUP(x, y, z) We can write our own functions in Visual Basic. E.g. If you want to calculate the price of a share using the Dividend Growth model you can write a function which will do the following calculation and return the result DGMPrice = dividend / (InterestRate, GrowthRate)

Uploaded by

api-200202067
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 39

10.

Visual Basic Functions

Open Excel

Click File -> Save As

Save As a Excel Macro-Enabled Workbook

Click File -> Options

Click Customize Ribbon

Tick Developer

Click OK

Select Developer menu

Functions
Excel uses functions to do most calculations
=SUM(x) =COUNTIF(x,y) =VLOOKUP(x,y,z)

They take an input value e.g. x, y, z then perform a calculation and return a result We can write our own functions in Visual Basic

Area of a rectangle
We want to be able to type in a function such as =RectangleArea(Height, Width) Excel should do the following calculation Area = Height * Width Excel should then give us the result

Click on Visual Basic

Click Insert -> Module

Type

Function RectangleArea(Height, Width)

Press Enter on Keyboard and it will add End Function

This means Excel asks you for Height and Width It will then do calculations with these variables

Type RectangleArea = Height * Width

Click Save

Close Visual Basic editor

Click Formulas -> Insert Function

Select Category All

Scroll down to RectangleArea

Click OK

You are asked for Height and Weight

Type in Height 3 and Width 2

Click OK

The result of the function is displayed in the cell

You can also use this function by typing into the cell directly

Click cell B1

Type =RectangleArea(5,3) and press Enter

Calculates the result for you

Pricing a Futures Contract


Traders may want to calculate futures prices We want Excel to calculate the Futures price by providing the Spot price, Risk-Free rate and Time =Future(Spot, Rf, Time) Excel should calculate the following formula Future = (Spot)e(Rf)(Time)

Click Visual Basic

Type

Function Future(Spot, Rf, Time) Future = Spot * exp(Rf * Time)

Save and Close

Type in the following input values

In cell D10 type =Future(D6,D7,D8) and press Enter

Calculates Futures Price

Challenge
Create a function which will calculate the price of a share using the Dividend Growth model You want a user to be able to use a function where they get the price by typing in a function such as:
=DGMPrice (Dividend, InterestRate, GrowthRate)

Excel should then do the following calculation and return the result
DGMPrice = Dividend / (InterestRate GrowthRate)

What is the fair price of a share if it has a dividend of 2, interest rate of 0.06, and growth rate of 0.02?

You might also like