米ドル普通預金(2024年6月に解約)と2つの証券会社で保有している円建て、外貨建てのリスク資産管理を楽にするためにパワークエリを使ってみる事にしました。
6月25日のリスク資産確認は楽になったはずと期待していましたが色々と不具合が発生。
その後改善したのでまとめておきます。
次回7月25日の確認時に入力が必要なのはiDeCoの金額と日付のみ。
楽天証券とSBI証券のCSVファイルをダウンロードしてパワークエリを更新すれば一瞬で資産状況の確認が可能なはずです。
パワークエリ初心者が形式の違う複数のCSVファイルやExcelシートをまとめて管理する方法を試してみた記録です。
デスクトップに3つのフォルダーを用意
手入力したExcelシートを保存する「資産入力」フォルダーの他、楽天証券とSBI証券でダウンロードしたCSVファイルを保存するォルダー「楽天」と「SBI」フォルダーをデスクトップに用意しておきます(デスクトップで右クリック→新規作成→フォルダー)。
ファイル名は全て西暦8桁で統一しました。
フォルダーやファイルの中身が違うので問題なさそうです。
ファイルが増えていった時の動作確認のために6月30日と7月1日のファイルも仮保存していましたが、今後は毎月25日のファイルだけになります。
資産入力シート
ダウンロードできるCSVファイルには含まれず入力が必要なデータです。
楽天証券のiDeCo(楽天・オールカントリー)とSBI証券の外貨建資産(VTI,VYM,MMF)、住信SBIネット銀行の米ドル普通預金はエクセルシートに入力していました。
今までは日付と10カ所の金額を入力する必要がありましたが、米ドル普通預金は解約してSBI証券の外貨建資産も楽天証券にまとめたので、7月からは日付とiDeCoの楽天・オールカントリーの評価額と評価損益の入力だけになります。
6月分のデータがあるのでシートは変えずにこのまま使っていきます。
7月以降は2~5行目の金額は全て0になります。
楽天証券のCSVファイルからクエリを作成
楽天証券で保有している資産のCSVファイルを展開した状態です。
円建資産と外貨建資産がまとまっています。
必要な4列を選んで他の列は削除します(Ctrlを押しながら残したい順に列をクリックして列の削除→他の列を削除をクリックすると左から順番に並びます)。
銘柄の列(Column3)で残す銘柄名を選んでフィルターをかけます。
列名(銘柄名、評価額、評価損益)を変更して、評価額と評価損益の型を整数にしました。
評価額と評価損益から取得金額を求めます。
2つの列を選択した状態で列の追加→標準→減算。
列名は減算から取得金額に変えました。
CSVファイル名から日付を抽出します。
Source Nameをピリオドで2つに分けます。
分割したいSource Nameの列を選択(緑に表示される)して変換→列の分割→区切り記号による分割をクリックするとカスタム、ピリオド[.]が選ばれているのでOKをクリック。
西暦8桁の日付を日付型にします。
Source Nameを選んだ状態で列の追加→例からの列→選択範囲からをクリック。
右側に新たな列「列1」が追加されます。
列1の1行目をダブルクリックすると候補が表示されるので年月からの日付(or 年月からの月の最終日)を選んでEnterをクリック。
2行目以降にも日付が反映されたのを確認してCtrl+Enter で決定。
楽天証券とSBI証券でバラバラの表記を統一するために置き換えリストを利用します。
銘柄名の列を選択した状態で列の追加→カスタム列で新しい列名は「銘柄」、カスタム列の式は置き換えリストを利用した式を入力しました。
銘柄名を置き換えリストの銘柄に置き換えた列が追加されました。
残したい列の左から順番にコントロールを押しながらクリックして5列を選択したら、ホーム→列の削除→他の列の削除をクリック。
楽天証券からダウンロードしたCSVファイルから作成したクエリの完成です。
SBI証券のCSVファイルから2つのクエリを作成
SBI証券では円建保有証券はCSVファイルのダウンロードが可能ですが、外貨建保有証券はダウンロードできません。
約定履歴照会では円貨建口座と同じように外貨建口座の履歴もCSVダウンロードが可能なのに・・・
円建保有証券を展開するとこんな感じです。
株と投資信託の銘柄や金額の列がずれています。
置換で工夫すれば1つのクエリでもできそうですが、別々に分けてしまった方が楽そうなので、株と投資信託のクエリを別々に作成しました。
長くなってしまうので省きますが、楽天証券のクエリと同じです。
初めに必要な列を残して削除。
銘柄名称の列でフィルターしてマクドナルドを選択。
楽天証券と違って取得金額の列はあるので列の追加(減算)で求める必要はなく、初めの残す列で評価額の列も残しました。
保有している株式はマクドナルドだけで、銘柄名称も「マクドナルド」で分かりやすいのでこのまま使い置き換えリストには入れていません。
列名は「日付、「銘柄」、「取得金額」、「評価額」、「評価損益」で統一しました。
投資信託も同様です。
日付は資産入力の日付をコピー(フィル)したり、カスタム列で追加してその時は良さそうだったものの更新したら日付がずれるような事があったので止めました。
日付は全てCSVファイルをダウンロードした日付にして、ファイル名の西暦8桁を日付に変換しました。
結合ファイルでは年月に絞りました。
4つのクエリを結合
資産入力クエリに3つのクエリを追加します。
初めは各クエリに記号やカテゴリーをマージしましたが、結合クエリにマージするように変えました。
記号が主キーの代わりになるので主キーは止めました。
ホーム→クエリの追加で追加する3つのクエリを選んでOK。
列名が同じ4つのクエリのデータが統合されました。
集計しやすいように記号リストとカテゴリーテーブルのデータを追加します。
ホーム→クエリのマージで「記号リスト」を選び、共通列の銘柄を選択してOK。
同様に、「カテゴリーテーブル」もマージしました。
記号で昇順に並び替え。
日付を選択して列の追加→年と月をクリック。
年と月の列を選択して列の追加→列のマージでカスタムを選び、記号はスラッシュ[ / ]、列名には[年月]と入力。
年月の列ができたら日付と年、月の列は不要です。
必要な列を選んで他の列は削除して完成です。
ピボットテーブル
日付でフィルターして7月1日を選択。
ピボットテーブルの評価額の右側に比率を表示してみます。
Σ値 のフィールドに評価額をドラッグ。
Σ値 フィールドにドラッグした合計/評価額2 をクリックして値フィールドを下のように設定してOKをクリック。
評価額の右側にリスク資産全体に対する各銘柄の比率が表示されました。
取得金額と評価額、評価損益を表示。
元本(取得金額)と評価損益から損益率を求めます。
ピボットテーブル分析の集計フィールドをクリック。
名前に「損益率」と入力。
数式には=0と表示されているので、0を消して下のフィールドから[評価損益]を選んでフィールドの挿入をクリック。
[ / ]を入力したらフィールドから[取得金額]を選んでフィールドの挿入をクリックして[ *100] と入力したら右上の追加(下のスクリーンショットでは変更となっている部分)をクリックしてOK。
米ドルは0ドルですが表示がおかしいです。
ピボットテーブルオプションでエラー値や空白セルは0と表示するようにしました(これでエラーが見つけにくくなるようだったら修正します)。
他のリスク資産は2023年からの保有に対して、iDeCoは2012年11月から開始していたので損益率が高いです。
2012年~2018年は琉球銀行で野村DC国内株式インデックスファンド(30%)と野村DC外国株式インデックスファンド(50%)、野村DC債券インデックスファンド(20%)。
2018年12月からは楽天証券に移管して楽天・VTIのみ。
2024年1月に楽天・オールカントリーにスイッチングしたので、楽天・オールカントリーだけの損益率ではないです。
最後に前月比を表示してみます。
値フィールドに評価額を追加したらこれをクリックして値フィールドを下のように設定しました。
基準フィールドを日付、基準アイテムは前の値としました。
6月25日より前のデータがなくEの列を非表示にしたら、データが変わった時に表示されなくなって不便だったので幅を狭めるだけにしました。
フォルダーから6月30日のファイルを移動後にピボットテーブルを更新するとちゃんと反映されました。
SBI証券のサイトが改善されても、ダウンロード可能なCSVファイルの形式は変わらないと思っていますがどうでしょうか。
7月25日のリスク資産確認前にもう1度テストしてみるつもりです。