AMORDEGRC in Collabora Office: Source-Qualified Depreciation Guide
Understand the pinned Collabora depreciation coefficients, whole-unit rounding and independently reconstructed examples.
Verification status: See the evidence and test scope described in this guide. How formula examples are checked
Quick answer: AMORDEGRC calculates degressive depreciation for a specified period. For the official 2000-unit asset example, the independently reconstructed period-4 amount is 163 currency units. This guide explains the inspected Collabora distribution algorithm, rather than claiming a tested result in an installed application.
Syntax and inputs
=AMORDEGRC(Cost; DatePurchased; FirstPeriod; Salvage; Period; Rate [; Basis])
- Cost: acquisition cost, in currency units.
- DatePurchased: acquisition date; use a date cell or DATE formula.
- FirstPeriod: end date of the first settlement period.
- Salvage: intended residual asset value at the end of its depreciable life.
- Period: requested period, with 0 identifying the initial partial period. Use small nonnegative whole numbers in this guide.
- Rate: depreciation rate, entered as a decimal or percentage, such as 0.1 or 10%.
- Basis: optional day-count convention; 0 when omitted.
The documented basis values are 0 (US/NASD 30/360), 1 (actual days/actual year), 2 (actual/360), 3 (actual/365), and 4 (European 30/360). These descriptions do not make all date-edge cases interchangeable. Formulas here use English names, semicolon separators and DATE to avoid locale-sensitive date text.
What the pinned implementation actually calculates
The source is commit c1013fad0d38683630b48c01b6d5208b8d81181e, identified by the archived distro/collabora/co-26.04 branch response. This is evidence from a Collabora distribution, not an inference from another product or from an installed binary.
The implementation calculates life as 1/Rate, then selects a multiplier:
| Calculated life | Coefficient |
|---|---|
| Less than 3 | 1 |
| At least 3, less than 5 | 1.5 |
| At least 5, at most 6 | 2 |
| Greater than 6 | 2.5 |
The effective depreciation rate is Rate times this coefficient. The help describes its coefficient as independent of depreciable life; the inspected source explicitly branches on 1/Rate. The table above reports that source behavior and makes the documentation discrepancy visible.
For period 0, multiply cost by the effective rate and the year fraction between the two dates, then round to a whole currency unit. Subtract that depreciation from book cost. For each following iteration, round effective rate times the current book cost; subtract the result from the residual depreciable balance (book cost minus salvage before that iteration).
If that residual balance becomes negative, a special branch returns rounded half of the current book cost when the crossing is in the final requested iteration, or zero when further requested iterations remain. Otherwise, subtract depreciation from book cost and continue. The result is the depreciation amount for the requested period, not cumulative depreciation or closing book value.
The rounding call defaults to zero decimal places and RTL Corrected mode. Its positive-value path uses an approximately corrected floor of absolute value plus 0.5. Small positive halfway examples here round upward. This is not banker’s rounding, and ordinary decimal half-up arithmetic is not a complete specification of every floating-point edge. The independent checks deliberately use small, simple values.
Example 1: reconstruct the official 163-unit result
Enter this dataset:
| Cell | Value or formula | Meaning |
|---|---|---|
| B2 | 2000 | Cost |
| B3 | =DATE(2020;2;1) |
Acquisition date |
| B4 | =DATE(2020;12;31) |
End of first period |
| B5 | 10 | Salvage |
| B6 | 4 | Requested period |
| B7 | 10% | Rate |
| B8 | 0 | US/NASD basis |
The source-qualified formula is =AMORDEGRC(B2;B3;B4;B5;B6;B7;B8). Its independent expected amount is 163; no native Collabora result was observed.
Life is 10, so the coefficient is 2.5 and the effective rate is 25%. For these dates, the inspected basis-0 year-fraction path gives 330/360. The independent calculation proceeds as follows:
| Period | Unrounded depreciation | Rounded depreciation | Closing book cost |
|---|---|---|---|
| 0 | 458.333333… | 458 | 1542 |
| 1 | 385.5 | 386 | 1156 |
| 2 | 289 | 289 | 867 |
| 3 | 216.75 | 217 | 650 |
| 4 | 162.5 | 163 | 487 |
For a schedule, put 0 through 4 in D2:D6. In E2 use =AMORDEGRC($B$2;$B$3;$B$4;$B$5;D2;$B$7;$B$8) and fill down. Independent targets are 458, 386, 289, 217, 163. Their sum is 1513; cost less that sum is 487. These targets demonstrate the recurrence, including rounding at each stage rather than rounding only a final unrounded geometric expression.
Example 2: isolate the coefficient bands
Use cost 1000, salvage 0, purchase DATE(2020;1;1), first period DATE(2021;1;1), period 0 and basis 3. The actual interval is 366 days, so this is deliberately not a one-year fraction on actual/365. For clean full-year controls instead use DATE(2021;1;1) and DATE(2022;1;1) with basis 3: 365/365 = 1.
With that second date pair, the formula =AMORDEGRC(1000;DATE(2021;1;1);DATE(2022;1;1);0;0;25%;3) independently targets 375: life 4, coefficient 1.5, effective rate 37.5%.
Keeping all other inputs fixed, 50% targets 500 (life 2, coefficient 1); 20% targets 400 (life 5, coefficient 2); and 10% targets 250 (life 10, coefficient 2.5). These controls distinguish all four source branches without importing another application’s algorithm.
Example 3: why a simple salvage cap is misleading
This is an implementation diagnostic, not an accounting recommendation. Set cost 1000, salvage 800, rate 10%, basis 0, and use DATE(2021;1;1) for both dates. Initial depreciation is zero. The next tentative amount is 250, exceeding the 200 residual depreciable balance.
For requested period 1, the source’s special branch independently predicts 500, half of the current book cost. For requested period 2 with otherwise identical inputs, the crossing happens before the final requested iteration and the independent expectation is 0. These are separate calls from the original inputs, not a schedule that carries the period-1 result into the period-2 call.
Do not replace this rule with MIN(book value minus salvage; calculated depreciation): that would predict 200 and misdescribe the inspected implementation. Do not assume these examples constitute a compliant depreciation policy or extrapolate a full schedule through this unusual branch without checking requirements.
Boundaries, errors and troubleshooting
The inspected entrypoint rejects purchase dates later than FirstPeriod, nonpositive Rate, nonpositive Cost, negative Salvage, Salvage above Cost, and negative Period. Basis conversion defaults to 0 and validates the range 0 through 4. The helper casts Period to an unsigned integer; this guide deliberately avoids fractional, huge or out-of-range period inputs. Neither source guards nor that conversion establish worksheet coercion rules or the exact displayed error token.
If a result differs from the table, check the basis, date cells, percent entry, requested period and intermediate whole-unit rounding. Formatting a fractional number as a whole number does not implement this recurrence. AMORLINC is separately documented as another depreciation calculation; it is not a guaranteed interchangeable replacement. The official AMORDEGRC help also warns that basis 2 is not supported by Excel on XLSX export; that is a vendor compatibility warning, not a cross-product test performed here.
Availability and verification limits
The Collabora Office 26.04 Help snapshot was retrieved October 17, 2026 and reviewed October 19. The branch/source evidence was archived October 17; missing rounding dependencies were retrieved at the same immutable commit October 19. No native Collabora execution occurred. All numerical controls are independent arithmetic expectations, including reconciliation of the official example.
First introduced release and last functioning installed build remain unknown. The source pin does not establish every desktop, Online or mobile deployment, runtime exception display, locale/coercion behavior or extreme binary-rounding case. Source-qualified coverage is not native verification.
References and related guides
- Official AMORDEGRC help: syntax, basis descriptions and original 163-unit example; snapshot retrieved October 17, 2026.
- Pinned coefficient and recurrence implementation and entrypoint guards.
- Year-fraction implementation and basis default/validation.
- Rounding defaults, Corrected rounding, approximate floor and approximate-value correction.
- AMORLINC and Collabora function catalogue.