目次
fx収支記録をつけるエクセル
vbaでエクセルの式を埋め込むときに文字列でごり押しできます。式展開方法はなにか別のやり方があるのかもしれませんが、文字列でごり押しすることができるので、簡単にプログラムを書くことができます。
計算機能のついたFX収支記録表のダウンロード
前つくったやつを少し改良しました。こんな感じです。
スワップは計算式に入れていません。(スワップはなくてもいいかも)。
各sheetのセルを集計するやり方がわからなかったので、年収支だけはマクロボタン作成で対処しております。
プロシージャの公開
このファイルはlibreofficeで作っています。エクセルで開くとおかしくなるかもしれないので、
‘sheet名を連番に
sub sheet_name_step
for i = 1 to sheets.count
sheets(i).name = cstr(i) + “月”
next i
end sub
‘各シートにタイトルをつける
sub sheets_title_name
for i = 1 to sheets.count
with sheets(i)
.range(“a1”).value = “FX収支 ” + cstr(i) + “月”
.range(“a3”).value = “日付”
.range(“b3”).value = “利益”
.range(“c3”).value = “損失”
.range(“d3”).value = “スワップ”
.range(“e3”).value = “損益”
.range(“f33”).value = “合計収支”
end with
next i
end sub
‘各シートに日付を入力する
sub sheets_date_write
dim day as string
dim x as integer
for i = 1 to sheets.count
for j = 4 to 34
x = j – 3
day = “2018/” + cstr(i) + “/” + cstr(x)
sheets(i).cells(j, 1).value = day
sheets(i).cells(j, 1).numberformatlocal = “yyyy/m/d”
sheets(i).cells(j, 2).value = 0
sheets(i).cells(j, 3).value = 0
sheets(i).cells(j, 4).value = 0
next j: next i
end sub
‘各シートをクリアする
sub sheets_clear
for i = 1 to 12
sheets(i).cells.clear
next i
end sub
‘セルを足し算する
sub cells_sum
for i = 1 to sheets.count
for j = 4 to 34
sheets(i).cells(j, 5) = “=sum(b”+cstr(j)+”:c”+cstr(j)+”)”
next j: next i
end sub
‘月々の合計収支
sub month_money
for i = 1 to sheets.count
sheets(i).range(“f34”) = “=sum(e4:e34)”
next i
end sub
‘年収支を計算する
sub year_money
dim yearmoney as long
for i = 1 to sheets.count
yearmoney = yearmoney + sheets(i).range(“f34”)
next i
sheets(12).range(“g34”).value = yearmoney
end sub
自分でやらなくてもFX会社でcsvなどの取引記録がダウンロードできるかもしれない。
あまり調べてないのですが、FX会社は毎日取引報告書を出していますし、もしかするとcsvとかもダウンロードできるかもしれません。なので手入力で収支計算したい人だけエクセルを使えばよいと思います。