アットウィキロゴ

世代基礎通算

Private Sub Command1_Click()
Dim mj(0 To 99, 0 To 99) As Single
Dim fj(0 To 99, 0 To 99) As Single
Dim avgmtime(1900 To 2100) As Single
Dim avgftime(1900 To 2100) As Single
Dim avgmw(1900 To 2100) As Single
Dim avgfw(1900 To 2100) As Single
Dim jyo1(1900 To 2100) As Single
Dim jyo2(1900 To 2100) As Single
Dim jyo3(1900 To 2100) As Single
Dim jyo4(1900 To 2100) As Single
Dim slide(1900 To 2100, 0 To 99) As Single
Dim mwage(0 To 99) As Single
Dim fwage(0 To 99) As Single
Dim rou(5 To 99, 1 To 99) As Single
Dim byear As Single
Dim year As Single
Dim age As Single
Dim e1 As Single
Open "c:/nagoya/gdata/通算年金.txt" For Input As #1
Do Until EOF(1)
Input #1, a1, a2, a3, a4
year = a1
age = a2
mj(year, age) = a3
fj(year, age) = a4
Loop
Close #1
Open "c:/nagoya/gdata/通算平均加入年数.txt " For Input As #2
Do Until EOF(2)
Input #2, a1, a2, a3
byear = a1
avgmtime(byear) = a2
avgftime(byear) = a3
Loop
Close #2
Open "c:/nagoya/gdata/基礎スライド.txt" For Input As #22
Do Until EOF(22)
Input #22, a1, a2, a3
byear = a1
age = a2
slide(byear, age) = a3
Loop
Close #22
For byear = 1900 To 1950
avgmtime(byear) = avgmtime(1951)
avgftime(byear) = avgftime(1951)
Next
For year = 5 To 99
For age = 1 To 99
e1 = 0
byear = year + 2000 - age
w1 = 80 * slide(byear, age) * avgmtime(byear) / 40
e1 = w1 * mj(year, age)
w2 = 80 * slide(byear, age) * avgftime(byear) / 40
e1 = e1 + w2 * fj(year, age)
rou(year, age) = e1
Next
Next
Open "c:/nagoya/gdata/世代基礎通算年金.txt " For Output As #5
For year = 5 To 99
For age = 1 To 99
Write #5, year, age, rou(year, age)
Next
Next
Close #5











End Sub
最終更新:2010年03月19日 19:47