「保有株が増えるほど、株価の手入力だけで休日が終わる」「配当利回りを毎回電卓で計算している」「せっかく監視していたのに、買いたかった価格を見逃した」。こんな経験はありませんか?日本株の管理は、最初の数銘柄ならメモでも間に合います。しかし、保有株、監視株、配当、取得単価、決算日まで増えてくると、手作業はすぐに限界を迎えます。
そこで役立つのがGoogleスプレッドシートで日本株を管理する仕組みです。証券コードを入力するだけで株価を呼び出し、配当利回りや目標株価を計算し、条件を満たした銘柄だけを目立たせられます。難しいプログラムから始める必要はありません。まず標準関数で作り、取得できない銘柄だけ別の方法で補うのが、いちばん壊れにくく、初心者にも続けやすい設計です。
この記事では、2026年6月16日時点のGoogle公式情報、AppsScriptの最新仕様、日本取引所グループの証券コード情報を確認したうえで、子どもでも流れを追えるように順番に説明します。読み終わるころには、単なる株価一覧ではなく、自分の判断を助ける日本株ダッシュボードを作れるようになります。
最初に、この記事でできるようになることを3つに絞ります。
- 証券コードから日本株の株価を自動取得する基本設計。
- 配当利回りと目標株価から買い候補を見つける仕組み。
- 取得エラーや未対応銘柄があっても止まらない運用方法。
この3つを一度作れば、毎回サイトを開いて数字を写す作業が減り、調べる時間を企業分析に回せます。
結論!最初は標準関数、取れない銘柄だけ別ルート
日本株の自動管理で失敗しやすい人は、最初からGASやスクレイピングに飛びつきます。けれども、外部サイトの画面構造が変わると、昨日まで動いていた仕組みが突然壊れます。初心者が最初に選ぶべき順番は、標準関数、手入力の補助、GASです。
| 方法 | 向いている人 | 長所 | 注意点 |
|---|---|---|---|
| GOOGLEFINANCE | 初心者から上級者まで | 数式だけで始められ、管理が簡単です。 | 銘柄や項目によって取得できない場合があります。 |
| 手入力と自動計算の併用 | 配当や優待も管理したい人 | 情報の正確さを自分で確認できます。 | 決算後などに更新する習慣が必要です。 |
| AppsScript | 未対応銘柄が多い人 | 独自関数や一括処理を作れます。 | 実行時間、権限、取得元の規約に注意が必要です。 |
大切なのは、すべてを無理に自動化しないことです。株価は自動、年間配当は決算資料を見て手入力、利回りと買い判定は自動というように、正確さが必要な情報と頻繁に変わる情報を分けると、シートが長持ちします。
2026年版!日本株の株価取得で知るべき最新ポイント
日本株は取引所記号を付けて指定する
Googleの公式ヘルプは、銘柄コードだけでなく取引所記号も一緒に指定することを推奨しています。日本株では、GoogleFinance上の東京市場を示すTYOを付け、トヨタ自動車なら
TYO:7203
のように書きます。
基本形は次の数式です。
=GOOGLEFINANCE("TYO:7203","price")
これで株価が返れば、その銘柄は現在の環境で取得できます。証券コードをA2セルに入力する設計なら、次の形にすると銘柄ごとに数式を書き直す必要がありません。
=IFERROR(GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(A2)),"price"),"取得不可")
IFERRORを付ける理由は、未対応銘柄や一時的な通信エラーがあっても、シート全体をエラー表示だらけにしないためです。「取得不可」と表示された銘柄だけ、後で手入力や別ルートへ回せます。
証券コードは数字4桁だけとは限らない
ここは古い記事ほど見落としがちな重要点です。日本では2024年1月以降、新しく設定される証券コードに
130A
のような英字が入るようになりました。そのため、証券コードを数字として固定したり、
TEXT(A2,"0000")
だけで処理したりすると、新しい銘柄で失敗する可能性があります。
そこで、A列の表示形式は自動または書式なしテキストにし、数式では
TO_TEXT
と
UPPER
を使います。これなら
7203
も
130A
も同じ列で扱えます。小さな違いですが、数年使うシートでは大きな差になります。
リアルタイムではなく最大20分遅れる参考値
Googleの公式説明では、価格情報は最大20分遅れる場合があります。つまり、表示される数字は発注ボタンを押すためのリアルタイム価格ではありません。資産管理、監視、目標価格との比較には便利ですが、売買直前は必ず証券会社の取引画面で確認してください。
遅延時間を確認できる銘柄では、次の数式も使えます。
=IFERROR(GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(A2)),"datadelay"),"")
ただし、すべての銘柄ですべての属性が返るわけではありません。価格は取れてもPERが空欄になる、といったことがあります。空欄を「会社に情報がない」と決めつけず、その項目をGoogle側が返していない可能性を考えましょう。
直近3日間の公式更新を確認した結果
2026年6月13日から6月16日までのGoogle公式ヘルプ、AppsScriptのリリース情報、GoogleFinanceの日本株ページを確認した範囲では、日本株の取得式を変更する公式発表は見当たりませんでした。したがって、現時点では
GOOGLEFINANCE
と
TYO:証券コード
を第一候補にする方法が合理的です。
ただし、Googleの公式ヘルプ自体が、すべての市場やすべての属性を保証していません。今動いた数式が永久に動くと考えず、取得日、手入力欄、エラー表示を用意することが実務的な安全策です。
7ステップで日本株管理シートを完成させる
ここからは、実際にシートを作ります。最初から完璧を目指さず、まず1銘柄で動作を確認してから下へコピーしてください。
- 新しいスプレッドシートを作り、A列から証券コード、銘柄名、現在株価、年間配当、現在利回り、目標利回り、目標株価、目標との差、判定、保有株数、評価額の順に見出しを作ります。
- A2セルに
7203などの証券コードを入力し、A列の表示形式を自動または書式なしテキストにします。
- C2セルに
=IFERROR(GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(A2)),"price"),"")を入力し、現在株価を取得します。
- D2セルに会社予想の1株年間配当を入力し、E2セルに
=IFERROR(D2/C2,"")を入力して表示形式をパーセントにします。
- F2セルに自分が待ちたい目標利回りを入力し、G2セルに
=IFERROR(D2/F2,"")を入力して目標株価を逆算します。
- H2セルに
=IFERROR(C2-G2,"")、I2セルに
=IF(OR(C2="",G2=""),"",IF(C2<=G2,"候補","待つ"))を入力して買い候補を判定します。
- J2セルに保有株数を入力し、K2セルに
=IFERROR(C2*J2,"")を入力して現在の評価額を計算します。
この順番なら、入力するのは証券コード、年間配当、目標利回り、保有株数だけです。株価、利回り、目標株価、判定、評価額は自動で変わります。数式が動いたら2行目を下へコピーし、監視銘柄を追加してください。
配当利回りから買い時を逆算する考え方
目標株価は予想ではなく自分の待ち合わせ場所
目標株価という言葉を聞くと、未来の株価を当てる数字だと思いがちです。ここで使う目標株価は違います。この利回りまで上がったら詳しく調べるという、自分との約束です。
年間配当が100円で、目標利回りが4%なら、計算は
100÷0.04=2500
です。株価が2500円以下になると、単純計算上の予想配当利回りは4%以上になります。スプレッドシートでは
=年間配当/目標利回り
で逆算できます。
ただし、株価が下がった理由が業績悪化や減配なら、利回りが高く見えても安全とは限りません。買い候補の表示は購入命令ではなく、決算資料を読む合図として使ってください。これが、自動化に判断を奪われないための大切な線引きです。
配当データを完全自動化しないほうが安全な理由
株式向けの
GOOGLEFINANCE
で、どの日本株でも安定して年間配当や配当利回りが取れると考えるのは危険です。公式に案内されている株式属性には、価格、前日終値、52週高値、52週安値、PER、EPSなどがありますが、一般的な日本株の年間配当を必ず返す属性はありません。
そのため、D列の年間配当は、会社の決算短信や配当予想を確認して入力する方法が堅実です。決算発表のたびに1回直すだけなら、毎日株価を手入力するより負担は小さく、情報源も明確になります。さらに、配当を会社予想と実績の2列に分けると、増配や減配の変化にも気づきやすくなります。
株価以外に取得できる便利な項目
株価が取得できたら、監視に必要な項目を少しずつ増やします。次の表は、よく使う属性と数式の例です。
| 知りたい項目 | 属性 | 数式例 |
|---|---|---|
| 前日終値 | closeyest |
=IFERROR(GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(A2)),"closeyest"),"")
|
| 前日比率 | changepct |
=IFERROR(GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(A2)),"changepct")/100,"")
|
| 52週高値 | high52 |
=IFERROR(GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(A2)),"high52"),"")
|
| 52週安値 | low52 |
=IFERROR(GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(A2)),"low52"),"")
|
| PER | pe |
=IFERROR(GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(A2)),"pe"),"")
|
| EPS | eps |
=IFERROR(GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(A2)),"eps"),"")
|
| 出来高 | volume |
=IFERROR(GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(A2)),"volume"),"")
|
列を増やしすぎると、重要な情報が埋もれます。初心者は、株価、配当利回り、目標株価、判定、保有株数、評価額の6項目から始め、必要になったときだけPERや52週安値を追加するのがおすすめです。
条件付き書式で買い候補を一瞬で見つける
数字を並べただけでは、銘柄が増えたときに見落とします。そこで、I列が「候補」になった行へ色を付けます。適用範囲をA2:Kにし、カスタム数式へ
=$I2="候補"
を指定してください。
ここでのポイントは、I列だけを固定する$です。行番号は動くため、2行目、3行目、4行目と、それぞれの判定を見て行全体が色付きます。色は強すぎる赤より、薄い黄色や薄い緑のほうが長時間見ても疲れません。
さらに、現在株価が52週安値に近い銘柄を探したいなら、52週安値をL列へ取得し、M列に
=IFERROR(C2/L2-1,"")
を入れます。0%に近いほど52週安値付近です。ただし、安値に近いことと割安であることは同じではありません。業績、財務、将来の配当を確認する入口として使いましょう。
30日チャートをセル内に表示する方法
価格だけでは、急落したのか、ゆっくり下がったのかが分かりません。別シートを「履歴」と名付け、A1セルに次の数式を入れると、過去30日の日付と終値が展開されます。
=GOOGLEFINANCE("TYO:"&UPPER(TO_TEXT(管理!A2)),"close",TODAY()-30,TODAY(),"DAILY")
履歴シートのB2:Bに終値が並んだら、管理シートのチャート欄に
=SPARKLINE(履歴!B2:B)
を入れます。すると、1つのセルに小さな折れ線が表示されます。
過去データは1つの値ではなく、見出し付きの表として広がります。そのため、右や下に別の数字があると展開できません。履歴専用シートを分けると、配列結果をふさぐエラーを防げます。また、公式仕様ではGOOGLEFINANCEの過去データをSheetsAPIやAppsScript経由で取り出す用途に制限があるため、シート上で表示して使う設計が安全です。
エラーが出たときの直し方
うまくいかないときは、数式を全部消す前に、表示された症状から原因を絞ります。次の確認順なら、多くの問題を短時間で切り分けられます。
- 取得不可やN/Aになる場合は、証券コードの前後に余計な文字がないか、
TYO:を付けているか、GoogleFinance上に同じ銘柄があるかを確認します。
- Loadingが長く続く場合は、同じ種類の関数を大量のセルで同時に呼び出していないか確認し、銘柄数を減らして1行だけで試します。
- 配列結果を展開できない場合は、過去データの出力先にある数字や文字を削除し、履歴専用の空いた範囲へ移します。
- 株価は取れるのにPERが空欄の場合は、その属性が銘柄に対して提供されていない可能性があるため、別の情報源で確認します。
- 英字入りコードだけ失敗する場合は、A列を数値専用にしていないか、
TEXT(A2,"0000")で英字を消していないかを確認します。
エラーを完全に隠すために空文字だけ返すと、故障に気づけません。重要な列では「取得不可」と表示し、補助列では空欄にするなど、見つけるためのエラー処理と見た目を整えるエラー処理を使い分けましょう。
大量銘柄ではGASより先に軽量化する
同じ関数を何百個も置かない
銘柄数が増えると、便利な数式でも重くなります。株価、PER、EPS、出来高、52週高値、52週安値を100銘柄に付ければ、外部データを呼ぶ数式は600個です。更新が遅くなったとき、すぐGASへ移るのではなく、まず本当に毎日必要な列だけ残します。
現在株価と前日比は毎日必要でも、EPSや年間配当は決算のたびに確認すれば十分です。監視用シートは軽くし、企業分析用シートへ詳しい数字を分けると、読み込み時間も判断時間も減ります。
GASの自作関数は範囲をまとめて処理する
標準関数で取れない銘柄をGASで補う場合、1セルにつき1回外部サイトへアクセスする設計は避けましょう。Googleの公式ガイドでも、カスタム関数を何十回、何百回と呼ぶと遅くなるため、範囲を二次元配列で受け取り、まとめて返す方法が推奨されています。
また、カスタム関数は1回の実行を30秒以内に終える必要があります。外部取得には日次の呼び出し上限もあり、上限は変更される可能性があります。大量銘柄では、セルごとの自作関数より、メニューや時間主導トリガーで一括更新し、取得結果を値として保存する設計のほうが安定します。
スクレイピングは最終手段
Webページから直接数字を抜き出す方法は、見た目ほど簡単ではありません。サイトの利用規約、robots設定、ログインの要否、アクセス頻度、画面変更の影響を受けます。特に証券会社の会員ページを自動操作する仕組みは、認証方法が変わるだけで止まります。
どうしても使う場合は、取得元の規約を確認し、アクセス回数を抑え、失敗時に古い値を消さない設計にします。動くことと、使い続けてよいことは別問題です。この視点を持つだけで、危うい自動化を避けられます。
実務で壊れにくいシート構成
1枚のシートにすべて詰め込むより、役割を分けると管理しやすくなります。
| シート名 | 役割 | 主な入力 |
|---|---|---|
| 監視 | 株価、利回り、目標株価、判定を一覧表示します。 | 証券コード、年間配当、目標利回りを入力します。 |
| 保有 | 取得単価、保有株数、評価損益、年間配当見込みを管理します。 | 購入日、取得単価、株数を入力します。 |
| 履歴 | 過去株価やセル内チャートの元データを置きます。 | 通常は数式だけを置きます。 |
| 更新記録 | 配当や目標利回りを変更した日と理由を残します。 | 日付、変更前、変更後、根拠を入力します。 |
とくに更新記録は地味ですが強力です。半年前に目標利回りを変えた理由を思い出せないと、数字が自分の判断なのか、何となく入力したのか分からなくなります。日付と一言を残すだけで、シートは単なる表から投資判断の記録帳へ変わります。
Googleスプレッドシートで日本株を管理する疑問解決
日本株はすべて自動取得できますか?
いいえ。2026年6月時点ではGoogleFinance上で多くの日本株を確認できますが、Google公式はすべての日本株やすべての属性を保証していません。小型株、ETF、REIT、上場直後の銘柄などで取得できない場合があります。まず標準関数を試し、取れない銘柄だけ手入力や別の正規データへ切り替えてください。
株価が証券会社と違うのはなぜですか?
最大20分の遅延、取引時間外、データ提供元、更新時刻の違いが考えられます。スプレッドシートの値は資産管理や監視用として使い、注文時は証券会社の画面を確認してください。
配当利回りは自動取得できますか?
日本株の年間配当を安定して取得できるとは限りません。会社予想の年間配当を手入力し、
=年間配当/現在株価
で計算する方法が分かりやすく、根拠も確認しやすいです。記念配当や特別配当を含むかも自分で判断できます。
買い候補と表示されたら買ってよいですか?
いいえ。表示は価格条件を満たした合図にすぎません。売上、利益、配当方針、財務、決算の変化を確認してください。株価下落によって見かけの利回りだけが高くなっている場合もあります。
スマートフォンだけでも作れますか?
基本的な入力や確認はできますが、複雑な数式、条件付き書式、AppsScriptの設定はパソコンのほうが作業しやすいです。最初だけパソコンで作り、日々の確認をスマートフォンで行う使い分けが現実的です。
共有すると他人に数式を壊されませんか?
編集権限を渡すと数式も変更できます。入力セルだけ色を変え、数式列を保護し、閲覧だけの人には閲覧権限を渡してください。GASを含むシートでは、編集者が付属スクリプトを確認できる場合があるため、秘密情報やAPIキーをセルやコードへ直接書かないことも重要です。
為替も同じシートで管理できますか?
できます。米ドル円なら
=GOOGLEFINANCE("CURRENCY:USDJPY")
で参考レートを取得できます。ただし、為替も正確性や即時性が保証される取引価格ではありません。米国株の円換算評価額を眺める用途に向いています。
更新されないときは再読み込みすれば直りますか?
一時的な通信問題なら直ることがありますが、未対応銘柄や属性不足は再読み込みしても解決しません。証券コード、取引所記号、属性名を確認し、1銘柄だけの小さな数式で試して原因を分けてください。
まとめ!今日作るのは完璧な自動売買表ではない
Googleスプレッドシートで日本株を管理する最大の価値は、株価を自動で表示することだけではありません。自分が何を見て、どの条件なら調べ、なぜ買わなかったのかを一つの場所に残せることです。
まずA列に証券コードを入力し、C列で
GOOGLEFINANCE
から株価を取得してください。次に年間配当と目標利回りを入れ、目標株価と判定を自動計算します。英字入り証券コードへ対応し、エラー表示を残し、取れない銘柄だけ手動で補えば、初心者でも壊れにくい仕組みになります。
自動化の目的は、考えなくなることではなく、考えるべき銘柄を早く見つけることです。今日、まず1銘柄だけ登録してみてください。株価が表示され、買い候補の色が変わる瞬間、手入力の表が自分専用の投資ダッシュボードへ変わります。




コメント