楽天RSSのブログ記事(古い順)

[楽天RSS] EXCEL300銘柄制限

コード掲載の体裁テストです深い意味はなっしんぐ EXCELで1セル書き換えでも300銘柄制限は突破できない事の検証 Sub Test1() Dim row As Integer: row = 1 Dim code As Integer: For code = 1300 To 3000 For Each T In Array("T", "Q", "OS", "OJ") Dim rss As String: rss = "=RSS|'[Code].[T]'!銘柄名称" rss = Replace(rss, "[Code]", CStr(code)) rss = Replace(rss, "[T]", T) Cells(1, 1).Value = code Cells(1, 2).Formula = rss DoEvents If Cells(1, 2).Text <> "#N/A" Then Debug.Print row, code, T, Cells(1, 2).Value row = row + 1 Exit For End If Next Next End Sub みごとに299銘柄で止まりますってこと

[楽天RSS] VB6で300銘柄制限を突破

お次はVB6で300銘柄制限を突破してみる。 標準機能のDDELinkを利用してみますね。 Private Sub Form_Load() Dim count As Integer: count = 0 Dim code As Integer: For code = 1300 To 3000 For Each T In Array("T", "Q", "OS", "OJ") Dim topic As String topic = "RSS|[Code].[T]" topic = Replace(topic, "[Code]", CStr(code)) topic = Replace(topic, "[T]", T) On Error Resume Next Label1.LinkMode = 0 '0.なし Label1.LinkTopic = topic Label1.LinkItem = "銘柄名称" Label1.LinkMode = 1 '1.自動 If Err.Number = 0 Then count = count + 1 Debug.Print count, code, T, Label1.Caption Exit For End If DoEvents Next Next End Sub 遅いね。でも一応300銘柄以上回ります。 ちなみにDDEは20年近く昔の技術なので今のVB2005(VB.NET)にはDDELink機能はもうありませんよ。と

[楽天RSS] VB.NETでやってみる

で、VB2005(VB.NET)にはDDE機能はありませんが、NDdeなどの既存コンポーネントを利用してお手軽に同様の操作が可能です。 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim enc As Encoding = Encoding.GetEncoding("Shift-JIS") Dim count As Integer = 0 For code As Integer = 1300 To 3000 For Each T As String In New String() {"T", "Q", "OS", "OJ"} Dim topic As String = "[Code].[T]" topic = Replace(topic, "[Code]", CStr(code)) topic = Replace(topic, "[T]", T) Dim item As String = "銘柄名称" Using client As New DdeClient("RSS", topic) client.Connect() Dim buf(1024) As Byte If client.TryRequest(item, 1, 60000, buf) = 0 Then count = count + 1 Dim s As String = enc.GetString(buf) s = s.Substring(0, s.Length - 1) Debug.WriteLine(count & vbTab & code & vbTab & T & vbTab & s) End If End Using Next Next End Sub リクエスト方式だと遅いですがお手軽に全銘柄取得できます。 とりあえず入門用ってことでAPI直接呼出しとかコールバックとかはまた別のお話。

[楽天RSS] AccessでDDE

AccessでDDE Sub Test1() Dim count As Integer: count = 0 Dim code As Integer: For code = 1300 To 3000 For Each T In Array("T", "Q", "OS", "OJ") Dim topic As String topic = "[Code].[T]" topic = Replace(topic, "[Code]", CStr(code)) topic = Replace(topic, "[T]", T) On Error Resume Next Dim ChanNum As Long: ChanNum = Application.DDEInitiate("RSS", topic) Dim s As String: s = Application.DDERequest(ChanNum, "銘柄名称") If Err.Number = 0 Then Application.DDETerminate ChanNum count = count + 1 Debug.Print count, code, T, s Exit For End If Application.DDETerminate ChanNum DoEvents Next Next End Sub

[楽天RSS] 銘柄一覧の取得(Excel)

BEAMbitious トレーディング ブログ さんで紹介されてたStockFindを試してみた。

ExcelVBAでお手軽に

Sub 銘柄一覧()
Dim channel As Long: channel = DDEInitiate("RSS", "StockFind")
Dim s As Variant: s = DDERequest(channel, "NULL")

Dim rowIndex As Integer: For rowIndex = LBound(s) To UBound(s)
Dim code As String: code = s(rowIndex, 1)
Dim 名称 As String: 名称 = s(rowIndex, 2)
Dim 業種 As String: 業種 = s(rowIndex, 5)
Dim 市場 As String: 市場 = s(rowIndex, 6)

Debug.Print 業種, 市場, code, 名称
Next

DDETerminate channel
End Sub

すばらしいですね。BEAMbitious の人に感謝。

[楽天RSS] 銘柄一覧の取得(Access)

銘柄一覧の取得 のAccess版


Dim channel As Long: channel = DDEInitiate("RSS", "StockFind")
Dim s As Variant: s = DDERequest(channel, "NULL")
DDETerminate channel

Dim lines() As String: lines = Split(s, vbLf)

Dim rowIndex As Integer: For rowIndex = 1 To UBound(lines)
Dim columns() As String: columns = Split(lines(rowIndex), vbTab)

Dim code As String: code = columns(0)
Dim 名称 As String: 名称 = columns(1)
Dim 業種 As String: 業種 = columns(4)
Dim 市場 As String: 市場 = columns(5)

Debug.Print 業種, 市場, code, 名称
Next

[楽天RSS] DDE(シンプルパターン)

もっとも手抜きにDDEコールバックでRSSから株価を拾ってみる。 

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim ddeinst As UInteger Dim pfnCallback = New DdeDelegate(AddressOf DdeCallback) DdeInitialize(ddeinst, pfnCallback, CBF_SKIP_REGISTRATIONS, 0) Dim hszServiceName = DdeCreateStringHandle(ddeinst, "RSS", CP_WINANSI) Dim hszTopicName = DdeCreateStringHandle(ddeinst, "2753.T", CP_WINANSI) Dim hszItemName = DdeCreateStringHandle(ddeinst, "現在値", CP_WINANSI) Dim hconv = DdeConnect(ddeinst, hszServiceName, hszTopicName, Nothing) DdeClientTransaction(Nothing, 0, hconv, hszItemName, CF_TEXT, XTYP_ADVSTART, 9999, Nothing) End Sub Public Function DdeCallback(ByVal uType As Integer, ByVal uFmt As Integer, ByVal hConv As IntPtr, ByVal hsz1 As IntPtr, ByVal hsz2 As IntPtr, ByVal hData As IntPtr, ByVal dwData1 As IntPtr, ByVal dwData2 As IntPtr) As IntPtr If uType = XTYP_ADVDATA Then Dim data = DdeAccessData(hData, Nothing) MsgBox(data) End If End Function

ほんとは各種ハンドルの解放とかエラー処理が必要ですが、基本これだけ。

あと、API利用のために以下も必要です。

Public Const CBF_SKIP_REGISTRATIONS As Integer = &H80000 Public Const CF_TEXT As Integer = 1 Public Const CP_WINANSI As Integer = 1004 Public Const DDE_FACK As Integer = &H8000 Public Const XTYP_ADVDATA As Integer = &H4010 Public Const XTYP_ADVSTART As Integer = &H1030 Public Const XTYP_ADVSTOP As Integer = &H8040 Public Delegate Function DdeDelegate(ByVal uType As Integer, ByVal uFmt As Integer, ByVal hConv As IntPtr, ByVal hsz1 As IntPtr, ByVal hsz2 As IntPtr, ByVal hData As IntPtr, ByVal dwData1 As IntPtr, ByVal dwData2 As IntPtr) As IntPtr <DllImport("user32.dll", EntryPoint:="DdeInitialize", CharSet:=CharSet.Ansi)> _ Public Shared Function DdeInitialize(ByRef pidInst As UInteger, ByVal pfnCallback As DdeDelegate, ByVal afCmd As UInteger, ByVal ulRes As UInteger) As UInteger End Function <DllImport("user32.dll", EntryPoint:="DdeConnect", CharSet:=CharSet.Ansi)> _ Public Shared Function DdeConnect(ByVal idInst As UInteger, ByVal hszService As IntPtr, ByVal hszTopic As IntPtr, ByVal pCC As IntPtr) As IntPtr End Function <DllImport("user32.dll", EntryPoint:="DdeCreateStringHandle", CharSet:=CharSet.Ansi)> _ Public Shared Function DdeCreateStringHandle(ByVal idInst As UInteger, ByVal psz As String, ByVal iCodePage As Integer) As IntPtr End Function <DllImport("user32.dll", EntryPoint:="DdeAccessData", CharSet:=CharSet.Ansi)> _ Public Shared Function DdeAccessData(ByVal hData As IntPtr, ByRef pcbDataSize As UInteger) As String End Function <DllImport("user32.dll", EntryPoint:="DdeClientTransaction", CharSet:=CharSet.Ansi)> _ Public Shared Function DdeClientTransaction(ByVal pData As IntPtr, ByVal cbData As UInteger, ByVal hConv As IntPtr, ByVal hszItem As IntPtr, ByVal wFmt As UInteger, ByVal wType As UInteger, ByVal dwTimeout As UInteger, ByRef pdwResult As UInteger) As IntPtr End Function

うーむ

マケスピとRSSの自動起動ツールをシェアウェアとして公開しますよ。お小遣いほしいよ。

 

いきなり有料はアレなんでとりあえず無料でも使えます。

画面は今んとここんなかんじ。
20090505ss.png

 

まずはお試しっぽくこっそり公開してみる。→ MSRSS.exe

 

注意:初期値ではユーザID: MSDEMOが入力されます。 自分のユーザIDとパスワードはちゃんとメモしておいてから起動してください。

・動かなかったらWindowsUpdateで.NET Framework 2.0 を入れてみてください。

・自己責任でお願いします。

・マケスピはVer.7.23で動作確認しました。今後のバージョンでは動かないかもね。

・無料版はユーザIDとパスワードは毎回入力、 開始ボタンも手動です。

・送金するといろいろベンリにする予定です。

 

  なんか機能リクエストとかあれば聞きますよ。

MSRSS 0.1

いくつか改良

・IDとパスワードを保存できるようにしてみた。(有料版機能)

・起動時に自動開始する機能も追加。(有料版機能)

20090506ss.png

 

さて、初期テストしてくれる方のために解除キーも公開しますよ。

解除キー: ******** (様子見のため隠してみたよ♪)

 

最新EXEはこちら→ MSRSS.exe

MSRSSページ

はいはい、MSRSS用のページ作りましたよ。

ロゴも手抜き

 

ベクターシェアレジの申請中なので送金はしばらくお待ちください。



まけまけシグナル


ミニブログ

メッセンジャー







エロ

●【お前ら全員逮捕w】 うpろだにエロ画像をたった2枚うpしただけの男性 問答無用で逮捕w●美少女フィギュア欲しいけど家族が怖くて買えない●うpろだにエロ画像をたった2枚うpしただけの男性 問答無用で逮捕w●AKB48の新曲のPVがエロいwwwwwwwwww●100均の物+αで自作オナホール作るwwwwww●平野綾ことあーやの処女が確定するまであと一週間を切ったわけだが●ハリー「透明マントでエロいことしよう」●【画像あり】オランダでロリコン党が選挙に出馬。マニフェストは“12歳とのセックス合法化●教え子の女子高生とラブホテルでセックス 木村岳城42歳を逮捕●のび太のイメージ。悪童、エロで変態、0点、3秒で眠れる、餅をパクパク●人気ブログ「VIPPERな俺」がレイプ被害者に追い討ちをかけてる件●内容があってシリアスで適度にエロい漫画教えて●男子校ナメんな。全裸で授業受けてたやつとかいるから●【本能】自分の性欲にいやけがさしてきた、マジでなくしたい【煩悩】●「一人暮らしの男の家に上がったからってエッチOKなわけじゃない」 美香さん(○6才)●「エロい」ってなんなんだろう●オッサンのチンコしゃぶってきたwwwww●AV男優ってAV女優に比べてプロ意識低いよね●処女の女って恥ずかしくないの?●巨乳タレント夏帆さん(19) 「カバンはたすき掛けにしようと思います」●佐藤寛子がヘアヌードに挑んだ映画のスゴイ評判 体にローションを塗りたくって男をボディー洗い●夫が「浮気してやる!」って叫んで出ていった●AV見てると鬱になるよな?●男なら女の子のパンツの中で飼われたいとか思うよな?●下着&入浴シーンがエロいAKB48の新曲PV●透け透け女子の虹エロ画像●乳首に吸い付きたくなるおっぱいの画像●佐々木希がセクシーな下着姿を大胆披露●「生き別れになった妹のアルテイシアですか?」と丁寧な口ぶりのシャア●全裸+ニーソックスのエロ写メ画像●ムラッとくる可愛い娘の三次エロ画像●萌える黒ニーソでパンツ丸見え鏡撮り●可愛い下着の自画撮りエロ写メ●夏だし3次スク水画像でも貼ってこうぜ●可愛い女の子が綺麗な美脚のエロ写メうp●萌えるムッチリな黒ニーソでくぱぁエロ写メ( )●TVで放送された温泉の入浴エロシーン●【動画・画像】貧乳が自分撮りのちっぱいうpしてオナニー●可愛らしくてエッチな下着姿画像●【No.723】 エッチなスレンダー女子校生♪●【No.722】 スレンダー美女のエッチなヌード♪●【No.721】 夏はプールでエッチな写真♪●【雑記】 巨乳美女のエッチな写真♪●【No.720】 色白お姉さんのエッチなヌード♪●チアガールのエロ画像ください ●パンツ見えそうで見えない女子高生のミニスカート画像●【三次元】 女子高生のエロ画像ください●W杯パラグアイの美しすぎるサポーターのヌード●【3次美エロ画像】 (´・ω・`)なぁスク水の画像スレって需要あるんじゃね?●【3次エロ画像】 三次貧乳画像下さい!! お願いします!●ほぼ全裸で踊ってみた●中国のニイハオトイレを久しぶり見た●摂食障害のオンナ達の画像●微エロ画像って最強じゃね?●ヤンジャンのAKB柏木ゆきりんがエロ過ぎて今日3回出た●AKB48 話題の下着PVに全裸入浴シーンも含まれていたようです●さっき仲里依紗のおっぱいと赤いパンツが見えた件●17歳の佐山彩香っていうグラビアアイドルがエロ可愛い過ぎて我慢できない●ジュニアアイドルが卑猥な格好してるエロ画像

モバイル