## Coupon Days FunctionMath Financial Class

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

### Calculates the number of days within the coupon period that includes the coupon date. That is the number of days between the previous coupon date and the next coupon date.

Examples:
```    CouponDays(#1/15/96#, #12/31/99#, 1, US_NASD_30_360) = 360
CouponDays(#1/15/96#, #12/31/99#, 2, US_NASD_30_360) = 180
CouponDays(#1/15/96#, #12/31/99#, 4, US_NASD_30_360) = 90
CouponDays(#1/15/96#, #12/31/99#, 1, Actual_Actual) = 366
CouponDays(#1/15/96#, #12/31/99#, 2, Actual_Actual) = 182
CouponDays(#1/15/96#, #12/31/99#, 4, Actual_Actual) = 91```
```    CouponDaysBeforeSettlement Function
CouponDaysAfterSettlement Function
CouponCount Function
PreviousCouponDate Function
NextCouponDate Function
CouponDaysVerify Subroutine
CouponDaysTest Subroutine
CouponDaysThreeWayTest Subroutine
COUPDAYS 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 does not match the Microsoft Excel COUPDAYS function in many cases when vBasis is Actual_Actual (1).
v2.0 Addition: This function is new to this version of Entisoft Tools.