RSSユーザー
Quote関数の使い方について
岡三RSSの初心者です(先物での自動売買の経験は1年ちょっとです)。最近一般株をトライしております。ところで、本日、excelのセルJ3に、=QUOTE(I3,1,2)と記入し、I3に9479(企業名インプレス)と記入しました。しかし、I3には、0としか出力されません。インプレスと出力されると思ったのですが。時刻は16:20でした。15:00を過ぎると、一般株のサービスは停止してしまうのでしょうか?教えていただければ幸いです。
2021年07月05日
大野 了
RSSユーザさん、こんにちは!!
"=QUOTE(I3,1,2)"の、第二引数と、第三引数ですが
第二引数:市場コード
第三引数:取得項目
となっていますので
銘柄名を取得したい場合は、
=QUOTE(I3,"","銘柄名")
とする必要があります!!
また、サービスの利用時間に関してですが、
基本岡三RSSにログインできる時間帯は、市場が閉まっていてもデータは取得できます!!
2021年07月06日
RSSユーザー
大野様
教えていただいた方法にて、銘柄名を出力することが出来ました。ありがとうございます!
その後、岡三RSS集いの広場から、一般株のサンプルファイルをダウンロードしまして、そのファイルに新たにシートを追加し、各銘柄のデータを取ろうとしました。しかし、500銘柄程度でそれ以上はデータが取れなくなりました。マニュアルを調べましたところ、QUOTE_Mであれば数量に制限が無いということがわかりまして、QUOTE_Mに書き換えました。ところが、「手動更新」の意味がわかっていないことに気が付きました!「更新」とは、どこかに更新ボタンがあるのでしょうか?あるいは、マクロに更新のプログラムを書けばよいのでしょうか?このあたりを教えていただければ幸いです。
2021年07月09日
大野 了
RSSユーザさん、こんにちは!!
うまく表示できてよかったです!!
更新ボタンの件ですが、
岡三RSSのアドインの右から3つ目の矢印がぐるっと回ってるようなボタンが
更新ボタンとなります!!
このボタンを押してあげると、QUOTE_Mなどの手動更新系のデータが更新されます!!
2021年07月09日
RSSユーザー
大野様
教えて頂いた通り、アドインの更新ボタンを押すことにより、QUOTE_Mが実行されるのを確認しました! 実のところ○○_Mの各種関数につきましては全く何も理解していなかった!という事に気が付きました。大変ありがとうございました! ところで、企業コード1001から9999までの全ての銘柄のデータ(企業名、前日終値、始値、現値の4個)を取得するのに、大体1分ぐらいかかりましたが、これは遅い方でしょうか? 最高の環境ではどれくらいの時間で取得出来るか、ご存知でしたら教えていただけたら嬉しいです。
2021年07月10日
大野 了
RSSユーザさん、こんにちは!
更新ボタンうまく行きましたか!!
良かったです!!
そうですねー
自分の環境が最高の環境なのかはわかりませんが、
とりあえず自分もやってみましたー
土曜日の9:00の時点で、3,4秒程度で全量取得できました。
休場中なので、きっと通信負荷も低いでしょうし、何とも言えませんが・・・
2021年07月10日
RSSユーザー
大野様
3~4秒ですか!驚きました!圧倒的な差ですね。こちらの環境は、PCが2年前に購入したノートPC、LANはWIFI、回線数は1回線のみ使用(先物の自動売買は終了後)でした。これを、高性能PC、LANはルーターとのケーブル直結、とすれば3、4秒になるんですかね? ところで最後の質問です。決められた時刻に自動的に更新する方法があれば教えていただければありがたいです。(例としてセルに書き込む関数とか、マクロにプログラムを書き込むとか)
2021年07月11日
大野 了
RSSユーザさん、こんにちは!!
自分の環境は
4年前に購入したワークステーション
有線LAN
となります。
RSSユーザさんのPCが1分もかかってしまう理由がわからないためなんとも言えませんが、
岡三RSSはそんなにPCのスペックを要求しないので、PC自体はメモリが乗っていれば問題ないかと・・・
有線LANに変えてみるのが、費用も掛からないですし試してみる価値ありそうですね!!
さて自動更新の件ですが、
RSSユーザさんのご認識通りマクロでやってあげる必要があり、以下の行で自動更新を掛けることができます。
やり方としては
1.更新ボタンを押す関数を作成する
2.更新ボタンを押す関数を定刻実行する設定を行う
となります。
ひとつずつ説明しますと・・・
1.更新ボタンを押す関数を作成する
こちらは『標準モジュール』か『ThisWorkbook』の中に
Public Sub UpdateRSSData()
Application.CommandBars("岡三RSS2").Controls.Item("更新").Execute
End Sub
と作ってあげたら自動で更新が実行されるようになります。
2.更新ボタンを押す関数を定刻実行する設定を行う
決められた時刻に実行は、OnTime メソッドを使うのが一番簡単だと思います。
以下のように記述しますと、
8時に先ほどUpdateRSSDataという関数を動かすことができるようになります!!
Call Application.OnTime(TimeValue("08:00:00"), "UpdateRSSData")
2021年07月11日
RSSユーザー
大野様へ
お早うございます。本日午前3時に起きまして、教えていただいた通りに実験し、完全に動作する事を確認しました!大変ありがとうございました! 銘柄数は9001~9999に制限したのと、実行した時間帯が午前3時頃で、誰もWIFIを使っていなかった為と思われますが、更新は1秒から2秒程度で終了しました!
ところで、以下二つにつきまして教えていただければありがたいです。
1.更新を行う時間を、シートAのセルA1に書いて(08:00:20とか)おきたいのですが、その場合、マクロをどのようにすれば良いでしょうか?
2.ファイルを立ち上げた瞬間は、QUOTE_M関数が書き込んであるセルはすべて#VALUE!となっており、設定された時間が来れば、自動的に更新されます。この、ファイルを立ち上げた瞬間の状態に戻す命令はあるでしょうか?(デバグのとき便利です!)
以上よろしくお願いします。
2021年07月12日
大野 了
RSSユーザーさん、こんにちは!!
うまくいきましたか、よかったです!!
>1.更新を行う時間を、シートAのセルA1に書いて(08:00:20とか)おきたいのですが、その場合、マクロをどのようにすれば良いでしょうか?
こちらは以下のように記述することにより、A1に指定した時間で起動すると思います。
Call Application.OnTime(Cells(1, 1), "UpdateRSSData")
>2.ファイルを立ち上げた瞬間は、QUOTE_M関数が書き込んであるセルはすべて#VALUE!となっており、設定された時間が来れば、自動的に更新されます。この、ファイルを立ち上げた瞬間の状態に戻す命令はあるでしょうか?(デバグのとき便利です!)
んー
こちらは、#VALUEには戻せないよう気がします・・・
岡三RSSを再起動してもダメですし・・・
2021年07月13日
RSSユーザー
大野様
7月12日に2回目のワクチン注射を受けまして、次の日悪寒が激しく、ヘロヘロでした!現在なんとか元に戻りました!(回答が遅れたいいわけです!)
ところで、ご指定のとおり実験して動作を確認しました。大変ありがとうございました。ところで、これを拡張しまして、時刻α時からβ分おきにN回更新を繰り返したいときは、
Call Application.OnTime(Cells(1, y), "UpdateRSSData")
の文につきy=1からNまでをループを組んで実行することは出来ないですね?
(Cells(1,1)からCells(1,N)までは時刻が入っているものとします)
もし出来ないとしますと、N=10の場合は、以下の様に10個ズラズラとならべて書かないと駄目なのでしょうか?
Call Application.OnTime(Cells(1, 1), "UpdateRSSData")
Call Application.OnTime(Cells(1, 2), "UpdateRSSData")
・
・
Call Application.OnTime(Cells(1, 10), "UpdateRSSData")
あるいは、もっとスマートな記述の方法があるようでしたら、教えていただければありがたいです。
2021年07月15日