
Excel スプレッドシートがあります。初期値、年、カウント、値を入力する行があります。
この行の下に、入力に基づいて各年の情報を生成します。たとえば、初期値に 1000 ドル、年に 2013、カウントに 5、値に 500 と入力すると、次の情報を生成します。
Year Total
---- -----
2013 1000
2014 1500
2015 2000
2016 2500
2017 3000
これらの値を Excel で生成するにはどうすればいいでしょうか? ありがとうございます!
答え1
これは Excel 2010 のものですが、2013 でも同じように動作するはずです。
答え2
次のようなレイアウトを想定してみましょう
| A | B | C | D |
--+-----+-----+-----+-----+
1 |1000 |2013 | 5 | 500 |
はA1
初期値、B1
は開始年、C1
は「利息」が積み重なる年数、およびD1
単利(たとえば、1 年が経過した後に値に追加されるもの)です。
したがって、次のものを取得するには:
| A | B | C | D |
--+-----+-----+-----+-----+
1 |1000 |2013 | 5 | 500 |
2 | | |
3 |Year |Total|
4 |2013 |1000 |
5 |2014 |1500 |
6 |2015 |2000 |
7 |2016 |2500 |
8 |2017 |3000 |
次のようにします。
A4
:=B1
B4
:=A1
これは初期値を定義します。次のセルには、変更を反映するために異なる値が設定されます。これを 1 年間隔で実行していると仮定すると、次のようになります。
A5
:=A4 + 1
B5
:=IF(A5-$A$4 <= $C$1; $B$4 + (A5-$A$4)*$D$1; $B$4 + $C$1*$D$1)
最初のものは前年の値に 1 を追加するだけなので、下のセルをドラッグするとすべての年が順序付けられます。
2 番目は条件文で、基本的に、現在の年と開始年の差が利息が累積する年数 (5) 以下である場合は条件が成立しTRUE
、Excel は開始値とその間に累積した利息の額を計算します。年が終了年を超える場合、結果は利息が支払われた最後の年と等しくなります。したがって、セル ロック ($
行と列の識別子の先頭に付加される符号) が使用されます。
次に、4 行目を下にドラッグすると、それらの値が自動的に取得されます。
これをすべて頭の中でやったので、多少の間違いがあるかもしれませんが、原理的には機能します。
答え3
入力内容を入力してくださいA1を通じてD1次の小さなマクロを実行します:
Sub TableMaker()
init = [A1]
yr = [B1]
kount = [C1]
incr = [D1]
j = 2
For i = 1 To kount
Cells(j, 1) = yr
Cells(j, 2) = init
j = j + 1
yr = yr + 1
init = init + incr
Next i
End Sub