## Previous Coupon Date FunctionMath Financial Class

Public Function PreviousCouponDate( _
ByVal vSettlement As Variant _
, ByVal vMaturity As Variant _
, ByVal vFrequency As Variant _
, Optional ByVal vBasis As Variant _
) As Variant

### Calculates the previous coupon date before the settlement date.

Examples:
PreviousCouponDate(#1/15/96#, #2/28/99#, 1, US_NASD_30_360) = #2/28/95#
PreviousCouponDate(#1/15/96#, #2/28/99#, 2, US_NASD_30_360) = #8/31/95#
PreviousCouponDate(#1/15/96#, #2/28/99#, 4, US_NASD_30_360) = #11/30/95#
NextCouponDate Function
CouponDaysBeforeSettlement Function
PreviousCouponDateTest Subroutine
PreviousCouponDateBasisTest Subroutine
COUPPCD Function (Microsoft Excel)
vSettlement: Settlement date for the security. The date after the issue date when the security is traded to the buyer. Function returns Null if vSettlement is Null, cannot be interpreted as a Date, or is greater than the maturity date vMaturity. The time component of vSettlement (if any) is ignored.
vMaturity: Maturity date for the security. The date on which the security expires. Function returns Null if vSettlement is Null or cannot be interpreted as a Date. The time component of vMaturity (if any) is ignored.
vFrequency: Number of coupon payments per year. Use 1 for annual payments, 2 for semiannual payments, or 4 for quarterly payments. vFrequency is rounded to the nearest integer. Function returns Null if vFrequency is not 1, 2, nor 4.
vBasis: Optional day count basis that determines how to count the difference in days and years. One of the following day count basis constants: US_NASD_30_360, Actual_Actual, Actual_360, Actual_365, or European_30_360. vBasis defaults to US_NASD_30_360 if it is missing or Null or cannot be interpreted as a number. Function returns Null if vBasis is not one of the recognized Day Count Basis constants.
Note: This function returns the exact same results as the Microsoft Excel COUPPCD function.
v2.0 Addition: This function is new to this version of Entisoft Tools.