人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセルの文字列抽出処理についての質問です。
A1の数式はRSS|’5001,T’!市場銘柄
というもので、A1には新日鉄という銘柄名が表示されています。
ここで、B1のセルに市場銘柄という文字だけ表示したいのです。

希望結果
A .......... B
1市場銘柄 新日鉄

関数でもVBAでもOKです。(できれば関数がよい)



よろしくお願いいたします。
補足
マーケットスピードのRSSスプレッドシートを使っている方のページなどが
ありましたら、お願いいたします。

●質問者: kenpo43
●カテゴリ:コンピュータ 学習・教育
✍キーワード:A1 RSS VBA エクセル スピード
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● soft_kei
●0ポイント

http://www.rakuten-sec.co.jp/ITS/topinfo/RSSExcel_sample.html

お知らせ>リアルタイムスプレッドシート用Excelサンプルワークシートページ

URLはダミーです。


こんな方法もあります。

A1を選択 コピー B1で右クリック 形式を選択して貼り付け 貼り付けの値を選択して OK

◎質問者からの返答

ありがとうございました。

しかし、できませんでした。


2 ● くまっぷす
●100ポイント

http://blog.livedoor.jp/kokikoki_2/

マーケットスピードのRSSで稼ぎましょう! デイトレ BAKUSEN - livedoor Blog(ブログ)

Excelは苦手なんで(笑)補足のほうだけ。

こんな感じのページでいいんでしょうか?

http://peace.poosan.net/investor/2471.htm

http://www.vector.co.jp/soft/winnt/business/se366335.html

リアルタイム売買アラーム(WindowsNT/2000/XP / ビジネス)

あと、さすがに分野が分野だけにシェアウエアなんですが、こういうツールもあるようですね。

◎質問者からの返答

おおっ。

何かスゴそうなソフトですね。

vectorでマーケットスピード用のソフトを探したけどこんなのがあるとはわかりませんでした。

ありがとうございました。


3 ● soft_kei
●0ポイント

http://www.rakuten-sec.co.jp/ITS/topinfo/V_TOP_marketspeed02.htm...

あれ?

私のExcelでは出来るのですが。


B1には何と表示されてますか?

◎質問者からの返答

すいません、希望結果が間違っていました。

B1のセルは市場銘柄という文字が入るようにしたいのです。

値、貼り付けにしたところB1には市場銘柄が表示されていますが、私のエクセルの設定がどこかマズいのでしょうか。


4 ● borin
●0ポイント

http://faq.rakuten-sec.co.jp/cgi-bin/rakuten_sec.cfg/php/enduser...

よくあるお問い合わせ (1/19 ページ)

http://www.tokensoft.co.jp/prdir/prfcr/prfc02.htm

何かの参考になればと思って載せてみました。

よくある質問など。

◎質問者からの返答

ありがとうございました。


5 ● name_mm
●300ポイント

http://www.excel.studio-kazu.jp/lib/e1iw/e1iw.html

?G?N?Z????w?Z?F???[?U?[???????(e1iw)

ここのエクセルにユーザー関数を追加する方法を参照しながら、1、2のいずれかの方法で確認してみて下さい。


1.ユーザー関数+Excel標準ワークシート関数の組み合わせ


’ユーザー関数 Start

Function GetFormulaData(ByVal oRg As Range)


GetFormulaData = oRg.Formula


End Function

’ユーザー関数 End


その後、B1のせるに以下の数式を貼り付けて下さい。


=IF( ISERROR(FIND(”!”,GetFormulaData(A1))>0),””,RIGHT(GetFormulaData(A1),LEN(GetFormulaData(A1))-FIND(”!”,GetFormulaData(A1))))


2.ユーザー関数のみ


’ユーザー関数 Start

Function GetFormulaDataA(ByVal oRg As Range) As String


If InStr(oRg.Formula, ”!”) Then

GetFormulaDataA = Right(oRg.Formula, Len(oRg.Formula) - InStr(oRg.Formula, ”!”))

End If

End Function

’ユーザー関数 End


ご質問された内容は、銘柄の整理が目的でしょうか?

それであれば、下記のようなコードを使うとRSSのコードを作成します。

必ず、RealtimeSpreadSheet を起動した状態で行ってください。

実行していない場合は、編集するセル数分 メッセージが出力されます(笑


使用例)

下記のようにエクセルに入力します。

C1、D1、E1、・・・ に編集したいRSSの情報項目の文字列を入力します。

A2?A3をセル選択した状態で下記VBAを実行して下さい。


A B C D

1 市場銘柄 現在値

2 1775 東

3 9712 JQ


Public Sub RSS_DataSet()


Dim oWs As Worksheet

Dim oCell As Object

Dim i As Long

Dim sSCode As String

Const C_STR_DIF_POS = 1

If TypeOf Application.Selection Is Range Then

Set oWs = ActiveSheet


For Each oCell In oWs.Application.Selection.Cells

DoEvents

With oCell

If Len(.Value) = 4 And IsNumeric(.Value) Then

i = .Column + 2

sSCode = oWs.Cells(.Row, .Column + 1)

Select Case sSCode

Case ”HC”

sSCode = ”OJ”

Case ”JQ”

sSCode = ”Q”

Case ”大”

sSCode = ”OS”

Case Else

sSCode = ”T”

End Select

Do Until oWs.Cells(C_STR_DIF_POS, i) = ””

oWs.Cells(.Row, i).Formula = ”=RSS|’” & Format(.Value) & ”.” & sSCode & ”’!” & oWs.Cells(1, i)

i = i + 1

Loop

End If

End With

Next oCell

End If

Set oWs = Nothing

End Sub

◎質問者からの返答

ありがとうございました。

なるべく回答者さんの労力に見合ったポイントを差し上げる予定です。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ