Excelの減価償却関数を調べていたら、AMORDEGRC関数という聞き慣れない関数に出くわした――そんな経験はありませんか?
「旧フランス会計システム」と言われても、何をどう計算しているのかピンときませんよね。引数も7つあって、ちょっと身構えてしまいます。
この記事では、ExcelのAMORDEGRC関数の意味から引数の設定方法、具体的な使用例、エラーが出たときの対処法までわかりやすく解説します。AMORLINC関数や日本の定率法(DB関数)との違い、実際の業務でどう使い分けるかもまとめているので、ぜひ参考にしてみてください。
ExcelのAMORDEGRC関数とは?
読み方と名前の由来
AMORDEGRC関数の読み方は「アモーディグレシ」です。フランス語の「AMORtissement DEGRessif Comptable(逓減償却会計)」の略で、フランスの旧会計基準に対応した関数として用意されました。
名前のとおり、「逓減(だんだん減っていく)」する償却方法を扱う関数です。会計用語にあまり馴染みがない方は、まず「使うほど価値が減っていく資産を、初期に多めに費用化していく仕組み」とざっくり押さえておけば大丈夫ですよ。
AMORDEGRC関数でできること
AMORDEGRC関数を使うと、逓減法(ていげんほう)に基づいた減価償却費を会計期ごとに計算できます。逓減法とは、資産の初期に多く償却していく方法です。年数が経つにつれて償却額が減っていきます。
耐用年数に応じた「減価償却係数」が自動で適用されるのが特徴ですよ。利用者が「初期に何倍多く償却するか」を意識しなくても、関数が内部で適切な倍率を選んでくれます。
また、資産を会計期の途中で購入した場合は、日割り計算で最初の期の償却費を算出してくれます。「期の途中で買ったから何ヶ月分だっけ?」と手計算する必要がありません。
AMORLINC関数との違い
AMORDEGRC関数と名前がよく似た関数にAMORLINC関数があります。どちらもフランスの旧会計基準に対応した減価償却関数ですが、償却方法が大きく異なります。
| 比較項目 | AMORDEGRC関数 | AMORLINC関数 |
|---|---|---|
| 償却方法 | 逓減法(初期に多く償却) | 定額法(毎期均等に償却) |
| 減価償却係数 | 耐用年数に応じて自動適用 | なし(均等配分) |
| 初期の償却額 | 大きい | 一定 |
| 後期の償却額 | 小さい | 一定 |
| 名前の語尾 | DEGRC(Dégressif=逓減) | LINC(Linéaire=直線・定額) |
「定率法に近い処理をしたい」場合はAMORDEGRC関数、「均等に償却したい」場合はAMORLINC関数を選びましょう。語尾の「DEGRC」と「LINC」で覚えておくと、関数選択のミスを減らせますよ。
減価償却係数テーブル
AMORDEGRC関数では、耐用年数に応じて以下の係数が自動的に償却率に掛けられます。
| 耐用年数(1÷償却率) | 減価償却係数 |
|---|---|
| 3年〜4年 | 1.5 |
| 5年〜6年 | 2.0 |
| 7年以上 | 2.5 |
たとえば償却率が20%(耐用年数5年)なら、係数2.0が適用されます。実質40%で逓減償却が行われるイメージですね。
この係数は引数で変更できません。耐用年数を表す「率(償却率)」から自動的に決まります。係数を細かく調整したい場合は、DB関数やDDB関数を使うほうが柔軟です。
AMORDEGRC関数の書式と引数
基本構文
=AMORDEGRC(取得価額, 購入日, 開始期, 残存価額, 期, 率, [基準])
引数は7つで、基準のみ省略できます。引数の数が多いので、最初は項目ごとにセルに分解して指定するとミスを減らせますよ。
引数の詳細
| 引数 | 必須/省略可 | 説明 |
|---|---|---|
| 取得価額 | 必須 | 資産の購入価格。本体価格+付随費用を含めるのが原則です |
| 購入日 | 必須 | 資産を購入した日付。DATE関数で指定するのがおすすめです |
| 開始期 | 必須 | 最初の会計期が終了する日付(決算日) |
| 残存価額 | 必須 | 耐用年数終了後の資産の見積り価格 |
| 期 | 必須 | 償却費を求めたい会計期。0始まりの整数 |
| 率 | 必須 | 減価償却率(例: 耐用年数5年なら0.2) |
| 基準 | 省略可 | 1年の日数計算方式(下表参照) |
引数のうち、特に間違えやすいのが「期」と「開始期」です。両方とも会計期に関する引数ですが、「開始期」は最初の決算日、「期」は何期目の償却費を求めたいかを示す番号です。混同しないように注意しましょう。
基準の設定値
| 値 | 1年の日数 | 用途 |
|---|---|---|
| 0(省略時) | 360日(NASD方式: 米国証券業協会の日数計算) | デフォルト |
| 1 | 実際の日数 | 厳密な日割計算 |
| 3 | 365日 | うるう年を無視 |
| 4 | 360日(ヨーロッパ方式) | 欧州慣行 |
基準に「2」は指定できません。指定すると#NUM!エラーになるので注意してくださいね。AMORDEGRC関数では、ほかの財務関数で使える「2: 実際/360日」が選べない点だけ覚えておけば十分です。
AMORDEGRC関数の使い方(実践例)
基本的な使用例
以下のような資産データがあるとします。製造ラインで使う100万円の機械を、新年度の頭に購入したケースを想定してみましょう。
| セル | 項目 | 値 |
|---|---|---|
| B2 | 取得価額 | 1,000,000 |
| B3 | 購入日 | 2024/4/1 |
| B4 | 開始期 | 2025/3/31 |
| B5 | 残存価額 | 100,000 |
| B6 | 率 | 0.2 |
期0(最初の会計期)の償却費を求める数式はこちらです。
=AMORDEGRC(B2, B3, B4, B5, 0, B6, 0)
購入日と開始期の間が1年分なので、期0は丸々1年分の逓減償却費が返されます。この例では耐用年数が5年(1÷0.2)なので、減価償却係数2.0が適用されますよ。実質的な償却率は0.2×2.0=0.4(40%)です。計算結果は400,000円になります。
期ごとの償却費推移を確認する
引数「期」の値を0, 1, 2…と変えていくと、各期の償却費が確認できます。
=AMORDEGRC(B2, B3, B4, B5, 0, B6, 0) → 期0の償却費
=AMORDEGRC(B2, B3, B4, B5, 1, B6, 0) → 期1の償却費
=AMORDEGRC(B2, B3, B4, B5, 2, B6, 0) → 期2の償却費
逓減法の特徴どおり、初期ほど償却額が大きくなります。年数が経つと小さくなっていくのがわかりますよ。
先ほどの資産データ(取得価額100万円、残存価額10万円、償却率0.2)で各期の推移を確認してみましょう。実質償却率が40%なので、毎期の帳簿価額に40%を掛けた金額が基本の償却費です。
| 期 | 数式の「期」引数 | 償却の考え方 | 期末帳簿価額(概算) |
|---|---|---|---|
| 期0 | 0 | 1,000,000 × 40% = 400,000 | 600,000 |
| 期1 | 1 | 600,000 × 40% = 240,000 | 360,000 |
| 期2 | 2 | 360,000 × 40% = 144,000 | 216,000 |
| 期3 | 3 | 残額を耐用年数の残りで按分 | 残存価額に近づく |
| 期4 | 4 | 残額を按分 | 残存価額に到達 |
期0が最大で、期を追うごとに償却額が小さくなっていきますね。帳簿価額が残存価額に近づくと、関数の内部ルールにより按分計算に切り替わります。最終的に、取得価額と残存価額の差額(90万円)ぶんが全期間で償却される仕組みです。
実務でこの推移を一覧表にまとめたい場合は、A列に期番号(0〜耐用年数)を入力しておき、B列で =AMORDEGRC($B$2,$B$3,$B$4,$B$5,A行番号,$B$6,0) のように絶対参照で固定しておくと、コピーするだけで償却スケジュール表が完成しますよ。
期の途中で購入した場合
会計期の途中で資産を購入するケースも見てみましょう。購入日を「2024/10/1」、開始期を「2025/3/31」に変えてみます。
=AMORDEGRC(1000000, DATE(2024,10,1), DATE(2025,3,31), 100000, 0, 0.2, 0)
この場合、購入日から期末までが約半年分です。AMORDEGRC関数は日割り計算を行うので、期0の償却費は1年分より少なくなります。期の途中取得でも、手動で按分する必要がないのは便利ですよ。
ちなみに、期1以降は通常どおりの逓減法で計算されます。「最初の期だけ日割り、あとはフル」と覚えておくとわかりやすいですね。
基準を変えると結果はどう変わる?
参考までに、基準(最後の引数)を変えると結果が変わるのかも見ておきましょう。同じ条件で基準だけ変えた場合の挙動は以下のとおりです。
| 基準 | 1年の日数 | 期0が1年丸ごとのときの挙動 | 期0が半年分のときの挙動 |
|---|---|---|---|
| 0 | 360日(NASD) | 影響なし(フル償却) | わずかに大きめ |
| 1 | 実際の日数 | 影響なし(フル償却) | 暦どおりの按分 |
| 3 | 365日 | 影響なし(フル償却) | 暦どおりに近い按分 |
| 4 | 360日(欧州) | 影響なし(フル償却) | わずかに大きめ |
期0が1年丸ごと(購入日と開始期の差が1年以上)の場合は、基準による差はほぼ出ません。期の途中で購入した場合だけ、基準の違いが日割り結果に反映される点を押さえておきましょう。
AMORLINC関数と比較してみる
同じ資産をAMORLINC関数で計算するとどうなるかも見ておきましょう。
=AMORLINC(1000000, DATE(2024,4,1), DATE(2025,3,31), 100000, 0, 0.2, 0)
AMORLINC関数は定額法なので、毎期の償却額がほぼ一定になります。耐用年数5年(償却率0.2)なら、毎期200,000円前後の償却費が計上されます。一方のAMORDEGRC関数では初年度に400,000円、2年目に240,000円と大きく差が出ます。
「初期に税効果を取りたい」「初期コストを早めに費用化したい」場合はAMORDEGRC、「予算管理をシンプルにしたい」「毎期の費用を平準化したい」場合はAMORLINCを選ぶ、という整理になりますよ。
AMORDEGRC関数でエラーが出るときの対処法
#NUM!エラー
以下のケースで#NUM!エラーが発生します。
- 残存価額が取得価額より大きい: 残存価額は取得価額以下にしてください。残存価額が0の場合は問題ありません
- 率(償却率)が0以下: 正の数値を指定しましょう。耐用年数5年なら0.2、10年なら0.1です
- 基準に2を指定した: 0, 1, 3, 4のいずれかを使ってください
- 期に負の値を指定した: 0以上の整数を指定します
- 購入日が開始期より後: 購入日 ≤ 開始期になるように入力してください
特に「率」と「残存価額」のセル参照を間違えると、原因が分かりにくい#NUM!エラーが出やすいです。エラーが出たら、まずこの2つの引数を見直しましょう。
#VALUE!エラー
引数に数値や日付以外の文字列が入っていると#VALUE!エラーになります。
日付を直接入力するときは、文字列ではなくDATE関数を使って指定するのが確実ですよ。"2024/4/1" のような文字列形式だと、環境によっては日付として認識されないことがあります。
また、取得価額や残存価額のセルに「¥1,000,000」のように通貨記号付きの文字列が入っているとエラーになります。書式は「通貨」表示にして、データ自体は数値のまま扱うようにしてください。
#NAME?エラー
関数名のスペルミスが原因です。「AMORDEGRC」は長くて打ち間違いやすいので、入力途中で表示されるオートコンプリートから選ぶのがおすすめですよ。
特に「AMOR」まで打つと「AMORDEGRC」と「AMORLINC」の両方が候補に出てくるので、間違えないように注意しましょう。Tabキーで確定すると、括弧まで自動で挿入されて入力ミスを防げます。
AMORDEGRC関数を使うときの注意点
対応バージョン
AMORDEGRC関数はExcel 2007以降で使えます。Microsoft 365でももちろん対応しています。ただし、Googleスプレッドシートには用意されていない関数なので、ファイルを共有するときは注意してくださいね。
Googleスプレッドシートで同等の計算をしたい場合は、DB関数(定率法)で代用するか、計算ロジックを自前で組む必要があります。
日本の会計基準とは計算が異なる
AMORDEGRC関数はフランスの旧会計基準に基づいた計算を行います。日本の税法で定められた定率法とは、係数の計算方法や端数処理が異なります。日本国内の減価償却を行いたい場合は、DB関数(定率法)やSLN関数(定額法)を使うのが適切です。
「海外拠点のフランス会計基準に対応する必要がある」「学術的に逓減法の仕組みを確認したい」といった場面で使う関数と考えておきましょう。日本の法人税申告に使う減価償却費の計算には、原則として国税庁が定める償却率表とDB関数の組み合わせを使うのが安全です。
端数処理に注意
AMORDEGRC関数は内部で小数点以下を含む計算を行います。会計帳簿に転記するときは、ROUND関数などで丸めて使うのが一般的です。
=ROUND(AMORDEGRC(B2, B3, B4, B5, 0, B6, 0), 0)
円単位で記帳したい場合は、上記のように小数第0位で四捨五入しておくと安心ですよ。
Excelの減価償却関数を使い分けるポイント
Excelには複数の減価償却関数が用意されています。目的に合わせて選んでみてください。
| 関数 | 償却方法 | 特徴 |
|---|---|---|
| SLN関数 | 定額法 | 毎期同額を償却。もっともシンプル |
| DB関数 | 定率法 | 固定率で逓減償却。日本の法人税法に近い |
| DDB関数 | 倍額定率法 | 定率法の2倍の率で早期償却 |
| VDB関数 | 可変定率法 | 任意の期間を指定して柔軟に計算 |
| AMORDEGRC関数 | 逓減法(旧フランス方式) | 耐用年数に応じた係数で逓減 |
| AMORLINC関数 | 定額法(旧フランス方式) | フランス会計基準の均等償却 |
日本の会計基準で一般的に使うのはSLN関数やDB関数です。AMORDEGRC関数は海外子会社の旧フランス会計基準への対応が必要な場面で活躍しますよ。
業務シナリオ別の使い分け
シーン別に整理しておきます。
- 国内資産の定額法: SLN関数
- 国内資産の定率法(税務申告に近い処理): DB関数
- 早期償却したい新興企業: DDB関数
- 特定期間だけ集中償却したい: VDB関数
- フランス旧会計基準対応(逓減): AMORDEGRC関数
- フランス旧会計基準対応(定額): AMORLINC関数
AMORDEGRCとAMORLINCは、フランス基準を前提とした「特殊な減価償却計算」用と覚えておくと混乱しません。日常業務で使うのはSLNとDBがほとんどです。
よくある質問(FAQ)
Q1. AMORDEGRC関数は日本の税務申告に使えますか?
A. 原則として使えません。AMORDEGRC関数はフランスの旧会計基準に基づいた計算を行うため、日本の法人税法で定められた定率法とは係数の計算方法や端数処理が異なります。日本の税務申告で使う減価償却費は、国税庁の償却率表に従い、DB関数や手計算で算出するのが安全です。
Q2. AMORDEGRC関数とAMORLINC関数はどちらが税効果を取りやすいですか?
A. AMORDEGRC関数のほうが初期の償却額が大きくなるため、初年度に費用を多く計上したいケースに向いています。たとえば100万円の資産(耐用年数5年)なら、AMORDEGRCは初年度40万円、AMORLINCは20万円が目安です。ただし、トータルの償却額は同じになるので、長期的な費用総額は変わりません。
Q3. 引数「期」は1から始めるべきですか?
A. AMORDEGRC関数の「期」引数は0始まりです。最初の会計期は0、次の期は1、その次は2…と入力します。「1から始まる」と勘違いすると、想定とは1期分ずれた結果が返るので注意してください。
Q4. 基準(最後の引数)を省略しても問題ありませんか?
A. 多くのケースで問題ありません。省略時はNASD方式(30日/月、360日/年)が適用されます。期の途中で購入した資産で、日割り計算の精度をあげたい場合だけ「1(実際の日数)」を指定してみてください。
Q5. 減価償却係数を任意の値に変更できますか?
A. AMORDEGRC関数では係数を変更できません。係数は耐用年数(1÷率)に応じて1.5・2.0・2.5のいずれかが自動適用されます。任意の倍率で逓減償却を計算したい場合は、DDB関数(倍率引数を指定可能)やVDB関数を検討しましょう。
Q6. 計算結果がマイナスになることはありますか?
A. 通常は発生しません。マイナスになる場合は、引数の指定(特に取得価額・残存価額・期)に誤りがある可能性が高いです。引数を1つずつ見直してみてください。
まとめ
AMORDEGRC関数は、フランスの旧会計基準に基づいた逓減償却費を計算する関数です。引数は7つと多めですが、ポイントは「取得価額」「購入日」「開始期」「残存価額」「率」の5つを正しく設定することですよ。
特徴をおさらいすると、
- 耐用年数に応じた減価償却係数(1.5・2.0・2.5)が自動適用される
- 初期に多く償却し、年数とともに償却額が減っていく
- 期の途中で購入しても日割り計算してくれる
- 「期」は0始まりで指定する
- 日本の税務申告には使わず、DB関数やSLN関数を選ぶ
普段の業務で使う機会は限られるかもしれません。ただ、減価償却関数のラインナップを把握しておくと、いざフランス基準の処理が必要になったとき頼りになります。
関連する減価償却関数もあわせてチェックしてみてください。
