Contact

COUPDAYSNC Function in ONLYOFFICE Spreadsheet Editor: Syntax and Examples

Financial Intermediate ONLYOFFICE Spreadsheet Editor

Count days from settlement to the next coupon, distinguishing actual days from 30/360 remaining-period arithmetic.

Verification status: See the evidence and test scope described in this guide. How formula examples are checked

Quick answer

COUPDAYSNC returns the day count from settlement to the next coupon date. =COUPDAYSNC(DATE(2026,4,15),DATE(2028,12,15),2,1) is expected to return 61 actual days to June 15, 2026. It returns a duration, not the date serial for June 15.

Syntax and argument rules

=COUPDAYSNC(settlement, maturity, frequency, [basis])
Argument Meaning and permitted inputs
settlement Settlement date; use a numeric date created with DATE or a cell containing one
maturity Maturity date, strictly later than settlement
frequency Payments per year: 1 annual, 2 semiannual or 4 quarterly
basis Optional day-count code, default 0 in the inspected implementation

The official COUPDAYSNC reference lists basis 0 as US (NASD) 30/360, 1 as actual/actual, 2 as actual/360, 3 as actual/365 and 4 as European 30/360. Brackets indicate an optional argument; do not type them. Use integer frequency and basis values deliberately rather than relying on input conversion.

These functions infer a regular schedule from maturity and frequency. They do not take an issue date, first coupon date, holiday calendar or irregular-period flag. A contractual payment schedule with odd first/last coupons or business-day adjustments needs separate treatment.

Reproducible worksheet setup

Enter the following in a new worksheet. DATE avoids ambiguity between month/day and day/month date text.

Cell Input Meaning
A2 =DATE(2026,4,15) Settlement, April 15, 2026
B2 =DATE(2028,12,15) Maturity, December 15, 2028
C2 2 Semiannual coupons
D2 1 Actual/actual basis

Put =COUPDAYSNC(A2,B2,C2,D2) in E2. The expected regular schedule around settlement runs from December 15, 2025 to June 15, 2026. All examples in this guide are documentation/source-derived expectations with independent calendar arithmetic; none was tested in the application or its calculation engine.

Worked results: remaining period

Formula Expected days Independent check
=COUPDAYSNC(A2,B2,2,0) 60 180-period convention minus 120 elapsed
=COUPDAYSNC(A2,B2,2,1) 61 April 15→May 15 is 30 days; May 15→June 15 is 31
=COUPDAYSNC(A2,B2,2,2) 61 Actual difference to next coupon
=COUPDAYSNC(A2,B2,2,3) 61 Actual difference to next coupon
=COUPDAYSNC(A2,B2,2,4) 60 European 30/360 remaining numerator
=COUPDAYSNC(A2,B2,2) 60 Default basis 0

The implementation has two paths: bases 1, 2 and 3 use the calendar difference to the next coupon; bases 0 and 4 subtract elapsed days from the convention-based full period. This distinction matters when checking a result against COUPDAYS.

If settlement is exactly June 15, 2026, =COUPDAYSNC(DATE(2026,6,15),B2,2,1) is expected to return 183, reaching December 15. The next-date helper advances while its candidate is less than or equal to settlement. It therefore moves to the following payment rather than returning zero on the current coupon date.

Practical extension

Use remaining days as a timing input, keeping it separate from a scheduling date. For the worked example, June 15 is 61 actual days after April 15. Under basis 0, however, the result is 60 convention-days: adding 60 calendar days to settlement would not reproduce the coupon date. Use the schedule-date function COUPNCD when you need a date, and COUPDAYSNC when a valuation formula calls for a day-count numerator.

Likewise, basis 2 gives 61 remaining days and 121 elapsed days, while COUPDAYS gives 180. Replacing COUPDAYSNC with COUPDAYS−COUPDAYBS would give 59 and would be wrong for this source implementation’s actual/360 branch. Use the function required by the intended formula rather than imposing a cross-basis identity.

Errors, date inputs and schedule boundaries

The 10.0.0.169 coupon wrappers floor numeric date serials, frequency and basis before validation. Thus a time fraction is discarded. This does not mean malformed text or fractional settings are recommended inputs.

  • Settlement equal to or later than maturity returns #NUM! in the inspected source. For example, with A2 and B2 from the setup, =COUPDAYSNC(B2,B2,2,1) follows that guard.
  • An unsupported frequency such as 3 or basis such as 5 returns #NUM! after integer conversion.
  • Boolean scalar arguments and multi-cell ranges are rejected with #VALUE! in these wrappers. Use individual input cells.
  • An empty required scalar input is handled as #N/A; omitted basis defaults to 0. Do not assume a blank referenced basis cell has the same treatment as omitting the argument.
  • Dates before the supported serial range and locale-dependent date-text coercion require separate checking. The examples use modern DATE values rather than historical serial edge cases.

Month-end and leap-day schedules deserve special attention. The date helper preserves month end when adding months from a month-end date, while year changes use a UTC year setter. A February 29 maturity and an arbitrary month-end sequence should therefore be checked against the contract rather than inferred from a fixed number of days. The 15th-of-month examples avoid those edge cases. No holiday or weekend adjustment is made by the inspected coupon helpers.

Availability and compatibility

Checked October 18, 2026 against the current official help and SDKJS source tagged v10.0.0.169. Desktop Editors 10.0 was released October 13, 2026. The sources do not establish this function’s first introduction version, and do not mark it retired or deprecated.

The source tag matches the installed version/build designation; it does not establish native execution or byte-for-byte identity of the entire application. Older versions, mobile clients, server deployments and imported-workbook behavior were not tested. Formula examples use English names and comma separators; adapt separators to your editor’s settings. Date serial examples, where shown, assume the 1900 date system; a different workbook date system changes the raw serial, not the intended calendar label.