イシバシランブログ

「エクセル関数」と「お金に関する情報」をメインテーマに書いています。

【エクセル】HEX2DEC関数とDEC2HEX関数の使い方_10進数⇔16進数の変換

数の表示方法に、「10進数」と「16進数」と呼ばれる方法があります。

10進数は、"0"から"9"を使って数を表示する方法で、私たちの日常生活で使われている数字になります。

16進数は、"0"から"9"と"A"から"F"を使って数を表示する方法で、コンピュータの世界で使われることが多いです。

"A"から"F"は、普段私たちが使う数字である10進数で表すと、「A→10、B→11,C→12、D→13、E→14、F→15」となります。

エクセルで、「16進数」の数を「10進数」の数に変換するのが『HEX2DEC関数』で、「10進数」の数を「16進数」の数に変換するのが『DEC2HEX関数』です。

下図を用いて、HEX2DEC関数とDEC2HEX関数の使い方を解説します。

f:id:ishibashiran:20210418084845j:plain

 

HEX2DEC関数とDEC2HEX関数の構文

まず、HEX2DEC関数とDEC2HEX関数の構文は、次のようになっております。

HEX2DEC関数:=HEX2DEC(数値)

DEC2HEX関数:=DEC2HEX(数値,桁数)

※桁数は、この桁数で表示したいという考えが無ければ、入力は不要です。

 

エクセル関数を使う時は、2つの使い方があります。

1つ目は、黄色の○で囲っている「fxをクリック→すべて表示を選択→該当関数を選択→OK」と入力後に、入力内容を指示した枠が表示されるので、そこに入力することです。

2つ目は、緑色の枠に構文を直接入力となります。 f:id:ishibashiran:20210405075240j:plain

 

HEX2DEC関数の使い方

次に、「条件1:HEX2DEC関数を使い「16進数」の数を「10進数」の数に変換」の時の構文です。

B3セルに入力する時の関数は下記になります。

=HEX2DEC(A3)

数値:16進数の値

HEX2DEC関数は、「16進数」の数を「10進数」の数に変換する関数です。

0を16進数から10進数に変換した場合は、0

1を16進数から10進数に変換した場合は、1

10を16進数から10進数に変換した場合は、16×1+0=16

1Bを16進数から10進数に変換した場合は、16×1+11=27

20を16進数から10進数に変換した場合は、16×2+0=32

29を16進数から10進数に変換した場合は、16×2+9=41

2Cを16進数から10進数に変換した場合は、16×2+12=44

2Fを16進数から10進数に変換した場合は、16×2+15=47

30を16進数から10進数に変換した場合は、16×3+0=48

 

DEC2HEX関数の使い方

次に、「条件2:DEC2HEX関数を使い「10進数」の数を「16進数」の数に変換」の時の構文です。

E3セルに入力する時の関数は下記になります。

=DEC2HEX(D3)

数値:10進数の値

DEC2HEX関数は、「10進数」の数を「16進数」の数に変換する関数です。

49を10進数から16進数に変換した場合は、49÷16=3余り1なので、31

55を10進数から16進数に変換した場合は、55÷16=3余り7なので、37

60を10進数から16進数に変換した場合は、60÷16=3余り12なので、3C

64を10進数から16進数に変換した場合は、64÷16=4余り0なので、40

70を10進数から16進数に変換した場合は、70÷16=4余り6なので、46

72を10進数から16進数に変換した場合は、72÷16=4余り8なので、48

75を10進数から16進数に変換した場合は、75÷16=4余り11なので、4B

78を10進数から16進数に変換した場合は、78÷16=4余り14なので、4E

80を10進数から16進数に変換した場合は、80÷16=5余り0なので、50

 

HEX2DEC関数とDEC2HEX関数は、変換したい値を選ぶだけなので、使い方はとても簡単です。

10進数と16進数の変換の仕方も記載していますので、プログラミングに興味がある人は、覚えておきましょう。

【エクセル】BIN2DEC関数とDEC2BIN関数の使い方_2進数⇔10進数の変換

数の表示方法に、「2進数」と「10進数」と呼ばれる方法があります。

2進数は、"0"と"1"を使って数を表示する方法で、コンピュータの世界で使われることが多いです。

10進数は、"0"から"9"を使って数を表示する方法で、私たちの日常生活で使われている数字になります。

エクセルで、「2進数」の数を「10進数」の数に変換するのが『BIN2DEC関数』で、「10進数」の数を「2進数」の数に変換するのが『DEC2BIN関数』です。

下図を用いて、BIN2DEC関数とDEC2BIN関数の使い方を解説します。

f:id:ishibashiran:20210417101520j:plain

 

BIN2DEC関数とDEC2BIN関数の構文

まず、BIN2DEC関数とDEC2BIN関数の構文は、次のようになっております。

BIN2DEC関数:=BIN2DEC(数値)

DEC2BIN関数:=DEC2BIN(数値,桁数)

※桁数は、この桁数で表示したいという考えが無ければ、入力は不要です。

 

エクセル関数を使う時は、2つの使い方があります。

1つ目は、黄色の○で囲っている「fxをクリック→すべて表示を選択→該当関数を選択→OK」と入力後に、入力内容を指示した枠が表示されるので、そこに入力することです。

2つ目は、緑色の枠に構文を直接入力となります。

f:id:ishibashiran:20210405075240j:plain

 

BIN2DEC関数の使い方 

次に、「条件1:BIN2DEC関数を使い「2進数」の数を「10進数」の数に変換」の時の構文です。

B3セルに入力する時の関数は下記になります。

=BIN2DEC(A3)

数値:2進数の値

BIN2DEC関数は、「2進数」の数を「10進数」の数に変換する関数です。

0を2進数から10進数に変換した場合は、1×0=0

1を2進数から10進数に変換した場合は、1×1=1

10を2進数から10進数に変換した場合は、2×1+1×0=2

11を2進数から10進数に変換した場合は、2×1+1×1=3

100を2進数から10進数に変換した場合は、4×1+2×0+1×0=4

101を2進数から10進数に変換した場合は、4×1+2×0+1×1=5

110を2進数から10進数に変換した場合は、4×1+2×1+1×0=6

111を2進数から10進数に変換した場合は、4×1+2×1+1×1=7

1000を2進数から10進数に変換した場合は、8×1+4×0+2×0+1×0=8

 

DEC2BIN関数の使い方 

次に、「条件2:DEC2BIN関数を使い「10進数」の数を「2進数」の数に変換」の時の構文です。

E3セルに入力する時の関数は下記になります。

=DEC2BIN(D3)

数値:10進数の値

DEC2BIN関数は、「10進数」の数を「2進数」の数に変換する関数です。

9を10進数から2進数に変換した場合は、[①9÷2=4余り1→②4÷2=2余り0→③2÷2=1余り0→④1÷2=0余り1]なので、余りを番号が大きい順に並べると、1001

10を10進数から2進数に変換した場合は、[①10÷2=5余り0→②5÷2=2余り1→③2÷2=1余り0→④1÷2=0余り1]なので、余りを番号が大きい順に並べると、1010

11を10進数から2進数に変換した場合は、[①11÷2=5余り1→②5÷2=2余り1→③2÷2=1余り0→④1÷2=0余り1]なので、余りを番号が大きい順に並べると、1011

12を10進数から2進数に変換した場合は、[①12÷2=6余り0→②6÷2=3余り0→③3÷2=1余り1→④1÷2=0余り1]なので、余りを番号が大きい順に並べると、1100

13を10進数から2進数に変換した場合は、[①13÷2=6余り1→②6÷2=3余り0→③3÷2=1余り1→④1÷2=0余り1]なので、余りを番号が大きい順に並べると、1101

14を10進数から2進数に変換した場合は、[①14÷2=7余り0→②7÷2=3余り1→③3÷2=1余り1→④1÷2=0余り1]なので、余りを番号が大きい順に並べると、1110

15を10進数から2進数に変換した場合は、[①15÷2=7余り1→②7÷2=3余り1→③3÷2=1余り1→④1÷2=0余り1]なので、余りを番号が大きい順に並べると、1111

16を10進数から2進数に変換した場合は、[①16÷2=8余り0→②8÷2=4余り0→③4÷2=2余り0→④2÷2=1余り0→⑤1÷2=0余り1]なので、余りを番号が大きい順に並べると、10000

17を10進数から2進数に変換した場合は、[①17÷2=8余り1→②8÷2=4余り0→③4÷2=2余り0→④2÷2=1余り0→⑤1÷2=0余り1]なので、余りを番号が大きい順に並べると、10001

 

BIN2DEC関数とDEC2BIN関数は、変換したい値を選ぶだけなので、使い方はとても簡単です。

2進数と10進数の変換の仕方も記載していますので、プログラミングに興味がある人は、覚えておきましょう。

【エクセル】定率法の減価償却費計算を関数を組み合わせて算出してみた

先日、下図を用いてDB関数の使い方の記事を発信しました。

f:id:ishibashiran:20210414065733j:plain

 

以前の記事では、旧定率法の計算のみ解説しましたが、現時点の定率法は「200%定率法」という上記とは違う計算方法となっております。

今回は、200%定率法を計算する数式を作成しましたので、解説したいと思います。

 

 

200%定率法の減価償却費推移

以前の記事と同様に、取得額:600,000円・耐用年数5年の時の、減価償却費推移表は下図になります。

f:id:ishibashiran:20210416220648j:plain

 200%定率法の計算方法は、旧定率法と比較すると細かい箇所は変わっていますが、旧定率法の特徴であった最初に多くの減価償却費が発生し、徐々に減価償却費が少なくなる内容となっています。

 

200%定率法の減価償却費の算出数式

D4セルに入力する時の関数は下記になります。

=IF(D3="-","-",IFVALUE(LEFT(A4,1))>C4,"-",IF(LEFT(A4,2)="1年",B4*2/C4,IF(B4<=D3,B4-1,IF(D2=D3,D3,IF($B$4*$B$18>(B4*2/C4),B4*$B$17,B4*2/C4))))))

 

条件式1:昨年の減価償却費が計算対象外ならば、"-"と表示

違うならば条件式2に進む

条件式2減価償却費の年数が耐用年数を超えると、"-"と表示

違うならば条件式3に進む

条件式3減価償却費計算が1年目ならば、「今年の未償却残高×2÷耐用年数」の値を表示

違うならば条件式4に進む

条件式4:未償却残高が昨年の減価償却費以下ならば、「今年の未償却残高-1」の値を表示

違うならば条件式5に進む

条件式5:昨年と一昨年の減価償却費の値が同じならば、昨年の減価償却費を表示

違うならば条件式6に進む

条件式6:「1年目の未償却残高(取得額)×償却保証率」が「今年の未償却残高×2÷耐用年数」の値以上ならば、「今年の未償却残高×改定償却率」の値を表示

違うならば「今年の未償却残高×2÷耐用年数」の値を表示

D5セル以降も、この数式をコピー貼り付けして使います。

 

数式の解説

数式の意味を時系列で並べたら、下記の通りとなります。

条件式6で、耐用年数に応じて、減価償却費の計算方法を指示しています。

「今年の未償却残高×2÷耐用年数」が1年目から一定の年数まで行う計算となります。

この数式が第1段階の計算方法です。

一定の年数と表現している理由は、「1年目の未償却残高(取得額)×償却保証率」>=「今年の未償却残高×2÷耐用年数」になった年は、減価償却費を「今年の未償却残高×改定償却率」で算出するためです。

この数式が第2段階の計算方法です。

条件式5で、今年の未償却残高が第2段階の減価償却費以下の値になるまで、第2段階の計算で算出した減価償却費を使い続けます。

この数式が第3段階の計算方法です。

条件式4で、今年の未償却残高<=第3段階の減価償却費になったら、「今年の未償却残高-1」の値を減価償却費とします。

この数式が第4段階の計算方法であり、最後の計算となります。

条件式3については、耐用年数の最初の数字を読み取り、減価償却費計算をさせていることから、何もしないと10年や11年などを1年と数式が解釈するため、計算ミスを防ぐために優先順位が高い場所に設定しています。

条件式1条件式2については、減価償却費計算の対象外の年に計算をしないように指示をしています。

 

IF関数を使う時の注意点

IF関数の条件式は、最初の条件が優先順位が高く、後ろに行くほど優先順位が低くなります。

そのため、IF関数を作成する時は、優先順位が低い条件式から作成すると、処理の漏れを防ぎやすいです。

エクセル関数は、組み合わせ次第では、資料作成に掛かる工数を大幅に減らすことが出来ますので、上手く使いこなしていきましょう。

【エクセル】旧定率法の減価償却費計算を関数を組み合わせて算出してみた

先日、下図を用いてDB関数の使い方の記事を発信しました。

f:id:ishibashiran:20210414065733j:plain

 

前回の記事では、旧定率法の計算が全て出来ていなかったため、この点に対応した数式を作成しましたので、解説したいと思います。

 

 

旧定率法の減価償却費推移

前回の記事と同様に、取得額:600,000円・耐用年数5年の時の、減価償却費推移表は下図になります。

f:id:ishibashiran:20210415070035j:plain

 

DB関数のみでは、耐用年数経過後の減価償却費の計算が非常に難しいです。

その理由は、旧定率法の計算が複雑であることが背景にあります。

(1)減価償却費の累計が取得額の90%に達するまでは、「未償却残高×償却率」でその年の減価償却費を算出

(2)減価償却費の累計が取得額の95%に達する年は、「期首帳簿価額-取得価額×5%」でその年の減価償却費を算出

(3)その次の年から残りの簿価を5年で均等償却(5年目だけ償却額を-1して簿価が1円になるようにする)

出展:国税庁旧定額法と旧定率法による減価償却(平成19年3月31日以前に取得した場合)

 

DB関数は、(1)は残存価額に正しい数値を入れることで算出が出来ますが、(2)と(3)は算出が出来ません。(出来るかもしれませんが、私は分かりませんでした。)

固定資産の減価償却が終わるまでの推移表を作成するためには、DB関数以外の関数を組み合わせて作る必要があります。

 

 旧定率法の減価償却費の算出数式

①E4セルの場合

=DB(B4,C4,D4,1)

未償却残高:固定資産の減価償却が未完了の金額

残存価額:耐用年数を経た後の資産価格

耐用年数:固定資産を使える通常の年数

期間減価償却費計算期間

※期間の後に何ヶ月分の計算をするか判定するために、月の入力もできますが、入力無しならば12ヶ月で計算するため、入力を省略しています。

 

E4セルに入力する数式は、前回の記事と同様の内容となります。

固定資産の減価償却は、2年以上行うものですので、1年目の減価償却費計算では、複雑な数式は組みませんでした。

 

②E5セルの場合

=IF(SUM($B$4,-SUM($E$4:E4))<=1,"-",IF(B5<=E4,E4-1,(IF(SUM($B$4,-SUM($E$4:E4))<$B$4*0.05,E4,IF($B$4*0.05=B5,B5/5,IF($B$4*0.95<=SUM($E$4:E4,DB(B5,C5,D5,1)),B5-$B$4*0.05,DB(B5,C5,D5,1)))))))

条件式1:取得額から昨年までの減価償却費累計を差し引いて1以下ならば、"-"と表示

違うならば条件式2に進む

条件式2:未償却残高が昨年の減価償却費以下であれば、昨年の減価償却費から1を差し引いた値を表示

違うならば条件式3に進む

条件式3:取得額から昨年までの減価償却費累計を差し引いた値が取得の5%未満ならば、昨年の減価償却費を表示

違うならば条件式4に進む

条件式4:今年の未償却残高が取得額の5%ならば、未償却残高を5で割った値を表示

違うならば条件式5に進む

条件式5:1年目から今年までの減価償却費の累計値が取得額の95%以下ならば、未償却残高から取得額の5%を差し引いた値を表示

違うならば、DB関数で計算される減価償却費の値を表示

 

E4セルに入力する数式は、前回の記事と違い、減価償却費の累計値を確認して、計算方法が変わる時に、新しい処理をするように指示した関数となります。

E5セル以降も、この数式をコピー貼り付けして使います。

 

数式の解説

②の数式の意味を時系列で並べたら、下記の通りとなります。

条件式5で、タイミングが来たら、減価償却費の計算を、最初の「未償却残高×償却率」から「未償却残高-取得額×5%」に、計算方法を変更するように指示をしています。

条件式4で、昨年「未償却残高-取得額×5%」で減価償却費の計算をしたら、「未償却残高÷5」に、計算方法を変更するように指示をしています。

条件式3で、条件式4の計算を始めて4年目までならば、昨年と同じ計算をするように指示をしています。

条件式2で、減価償却費の計算の最後の年になったら、4年目の数字から1を差し引いた値を減価償却費とするように指示をしています。

条件式1で、減価償却費の計算が終わったならば、翌年からは"-"と表示するように指示をしています。

 

IF関数を使う時の注意点

IF関数の条件式は、最初の条件が優先順位が高く、後ろに行くほど優先順位が低くなります。

そのため、IF関数を作成する時は、優先順位が低い条件式から作成すると、処理の漏れを防ぎやすいです。

エクセル関数は、組み合わせ次第では、資料作成に掛かる工数を大幅に減らすことが出来ますので、上手く使いこなしていきましょう。

【エクセル】DB関数の使い方

エクセルで、固定資産の減価償却を旧定率法という方法で計算するのが『DB関数』です。

下図を用いて、DB関数の使い方を解説します。

f:id:ishibashiran:20210414065733j:plain

 

 

減価償却費推移表の説明

まず、図の説明をします。

未償却残高とは、減価償却が完了していない金額を指します。

1年目は取得額が表示され、2年目以降は取得額から減価償却費を差し引いた金額が表示されます。

残存価額とは、減価償却が終了した後の固定資産の価値を指します。

図では、未償却残高の10%を残存価額としています。

耐用年数とは、固定資産を使用可能と考える期間の事です。

国税庁のホームページを確認して、該当する固定資産の年数を採用します。

減価償却費とは、固定資産の価値の減少分の事を指します。

計算方法には、いくつか種類があり、図では旧定率法という方法を採用しています。

減価償却費累計額とは、1年目から始めた減価償却計算の、経過年数までの減価償却費の合計額を指します。

 

 DB関数の構文

次に、DB関数の構文は、次のようになっております。

=DB(取得額,残存価額,耐用年数,期,月)

 

エクセル関数を使う時は、2つの使い方があります。

1つ目は、黄色の○で囲っている「fxをクリック→すべて表示を選択→該当関数を選択→OK」と入力後に、入力内容を指示した枠が表示されるので、そこに入力することです。

2つ目は、緑色の枠に構文を直接入力となります。

f:id:ishibashiran:20210405075240j:plain

 

DB関数の使い方 

次に、「DB関数を使い旧定率法での減価償却費を算出」の時の構文です。

E4セルに入力する時の関数は下記になります。

=DB(B4,C4,D4,1)

未償却残高:固定資産の減価償却が未完了の金額

残存価額:耐用年数を経た後の資産価格

耐用年数:固定資産を使える通常の年数

期間減価償却費計算期間

※期間の後に何ヶ月分の計算をするか判定するために、月の入力もできますが、入力無しならば12ヶ月で計算するため、入力を省略しています。

 

旧定率法は、原則的に固定資産の減価償却が1年目が大きく、年数が経過するに従い徐々に縮小する計算方法です。

未償却残高×償却率」で算出されます。

※耐用年数が5年の場合は、償却率が0.369となります。

出展:国税庁旧定額法と旧定率法の償却率

 

1年目は、600,000×0.369=221,400

2年目は、378,600×0.369=139,703

3年目は、238,897×0.369=88,153

4年目は、150,744×0.369=55,624

5年目は、95,119×0.369=35,099

 

DB関数の注意点 

DB関数は、使うことが難しい関数です。

耐用年数までの減価償却費の算出は、残存価額を間違えなければ難しくないのですが、耐用年数を超えた減価償却費の算出は、DB関数のみでは非常に難しいです。

個人的には、DB関数のみを使って、旧定額法での減価償却費計算を完結したかったのですが、最終的には、他の関数を併用して計算を行いました。

非常に長い計算式になりましたので、後日、どのように関数を組み合わせて算出したのか記事にしたいと思います。

【エクセル】定額法の減価償却費計算を関数を組み合わせて算出してみた

f:id:ishibashiran:20210411164720j:plain

Photo by PublicDomainPictures from Pixabay

先日、下図を用いてSLN関数の使い方の記事を発信しました。

f:id:ishibashiran:20210410203449j:plain

【エクセル】SLN関数の使い方 - イシバシランブログ

 

以前の記事では、定額法の計算が耐用年数が変わった時に対応する数式を作成出来ていなかったため、この点に対応した数式を作成しましたので、解説したいと思います。

 

 

定額法の減価償却費推移

以前の記事と同様に、取得額:600,000円・耐用年数5年の時の、減価償却費推移表は下図になります。

f:id:ishibashiran:20210411080658j:plain

 前回の記事では、減価償却費の計算は出来ていたのですが、耐用年数が変わった時に対応する数式を作成出来ていなかったので、対応した数式を紹介したいと思います。

 

定額法の減価償却費の算出数式

G3セルに入力する時の関数は下記になります。

=IF(G2="-","-",IF(VALUE(LEFT(A3,1))>D3,"-",IF(VALUE(LEFT(A3,1))=D3,(B3/D3)-1,B3/D3)))

条件式1:昨年の減価償却費が計算対象外ならば、"-"と表示

違うならば条件式2に進む

条件式2減価償却費の年数が耐用年数を超えると、"-"と表示

違うならば条件式3に進む

条件式3減価償却費の年数が耐用年数と同じ年数にならば、「取得額÷耐用年数」から1を差し引いた値を表示

違うならば「取得額÷耐用年数」の値を表示

 

G3セルに入力する数式は、前回の記事と違い、償却年数が耐用年数と同じならば、「取得額÷耐用年数」から1を差し引いた値を表示、償却年数が耐用年数を超えた場合は、"-"と表示するように指示した関数となります。

G4セル以降も、この数式をコピー貼り付けして使います。

 

数式の解説

数式の意味を時系列で並べたら、下記の通りとなります。

条件式3で、耐用年数に応じて、減価償却費の計算方法を指示しています。

条件式2で、減価償却費の年数が耐用年数を超えると、減価償却費の計算をしないように"-"と表示するように指示をしています。

条件式1で、昨年時点で減価償却費の計算が終了していれば、今年も減価償却費の計算をしないように指示をしています。

条件式2条件式3VALUE関数を使う理由は、LEFT関数で取り出した数字を文字列ではなく数値として認識するように設定するためです。

 

IF関数を使う時の注意点

IF関数の条件式は、最初の条件が優先順位が高く、後ろに行くほど優先順位が低くなります。

そのため、IF関数を作成する時は、優先順位が低い条件式から作成すると、処理の漏れを防ぎやすいです。

エクセル関数は、組み合わせ次第では、資料作成に掛かる工数を大幅に減らすことが出来ますので、上手く使いこなしていきましょう。

【エクセル】旧定額法の減価償却費計算を関数を組み合わせて算出してみた

先日、下図を用いてSLN関数の使い方の記事を発信しました。

f:id:ishibashiran:20210410203449j:plain

【エクセル】SLN関数の使い方 - イシバシランブログ

 

前回の記事では、旧定額法の計算が全て出来ていなかったため、この点に対応した数式を作成しましたので、解説したいと思います。

 

 

旧定額法の減価償却費推移

前回の記事と同様に、取得額:600,000円・耐用年数5年の時の、減価償却費推移表は下図になります。

f:id:ishibashiran:20210411080658j:plain

 SLN関数のみでは、耐用年数経過後の減価償却費の計算が非常に難しいです。

その理由は、旧定額法の計算が複雑であることが背景にあります。

(1)減価償却費の累計が取得額の90%に達するまでは、毎年均等償却

(2)減価償却費の累計が取得額の95%に達する年は、「期首帳簿価額-取得価額×5%」でその年の減価償却費を算出

(3)その次の年から残りの簿価を5年で均等償却(5年目だけ償却額を-1して簿価が1円になるようにする)

出展:国税庁旧定額法と旧定率法による減価償却(平成19年3月31日以前に取得した場合)

 

SLN関数は、(1)は残存価格に正しい数値を入れることで算出が出来ますが、(2)と(3)は算出が出来ません。(出来るかもしれませんが、私は分かりませんでした。)

固定資産の減価償却が終わるまでの推移表を作成するためには、SLN関数以外の関数を組み合わせて作る必要があります。

 

 旧定額法の減価償却費の算出数式

①F3セルの場合

=SLN(B3,C3,D3)

取得価額:固定資産の購入金額

残存価額:耐用年数を経た後の資産価格

耐用年数:固定資産を使える通常の年数

 

F3セルに入力する数式は、前回の記事と同様の内容となります。

固定資産の減価償却は、2年以上行うものですので、1年目の減価償却費計算では、複雑な数式は組みませんでした。

 

②F4セルの場合

=IF(SUM($B$3,-SUM($F$3:F3))<=1,"-",IF(SUM($B$3,-SUM($F$3:F3))=$B$3*0.01,F3-1,(IF(SUM($B$3,-SUM($F$3:F3))<$B$3*0.05,F3,IF($B$3*0.05=F3,F3/5,IF(SUM(SLN(B4,C4,D4),$F$3:F3)>=$B$3*0.95,SUM($B$3,-SUM($F$3:F3))-$B$3*0.05,SLN(B4,C4,D4)))))))

条件式1:取得額から昨年までの減価償却費累計を差し引いて1以下ならば、"-"と表示

違うならば条件式2に進む

条件式2:取得額から昨年までの減価償却費累計を差し引いて、取得額の1%の金額ならば、昨年の減価償却費から1を差し引いた数値を表示

違うならば条件式3に進む

条件式3:取得額から昨年までの減価償却費累計を差し引いて、取得額の5%未満の金額ならば、昨年の減価償却費と同じ数値を表示

違うならば条件式4に進む

条件式4:取得額に5%を掛けた金額が昨年の減価償却費ならば、昨年の減価償却費を5で割った数値を表示

違うならば条件式5に進む

条件式5:1年目から今年までの減価償却費の累計値が取得額の95%以下ならば、取得額から昨年までの減価償却費の累計値を差し引き、さらに、取得額に5%を掛けた数値を差し引いた数字を表示

違うならば、SLN関数で計算される減価償却費の値を表示

 

F4セルに入力する数式は、前回の記事と違い、減価償却費の累計値を確認して、計算方法が変わる時に、新しい処理をするように指示した関数となります。

F5セル以降も、この数式をコピー貼り付けして使います。

 

数式の解説

数式の意味を時系列で並べたら、下記の通りとなります。

条件式5で、タイミングが来たら、減価償却費の計算を、最初の均等償却から「期首帳簿価額-取得価額×5%」に、計算方法を変更するように指示をしています。

条件式4で、昨年「期首帳簿価額-取得価額×5%」で減価償却費の計算をしたら、今年から残りの簿価を5年で均等償却するように指示をしています。

条件式3で、条件式4の計算を始めて4年目までならば、昨年と同じ計算をするように指示をしています。

条件式2で、減価償却費の計算の最後の年になったら、4年目の数字から1を差し引いた値を減価償却費とするように指示をしています。

条件式1で、減価償却費の計算が終わったならば、翌年からは"-"と表示するように指示をしています。

 

IF関数を使う時の注意点

IF関数の条件式は、最初の条件が優先順位が高く、後ろに行くほど優先順位が低くなります。

そのため、IF関数を作成する時は、優先順位が低い条件式から作成すると、処理の漏れを防ぎやすいです。

エクセル関数は、組み合わせ次第では、資料作成に掛かる工数を大幅に減らすことが出来ますので、上手く使いこなしていきましょう。