エクセルの文字列抽出処理についての質問です。

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

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

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


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

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/09/05 22:33:50
  • 終了:--

回答(5件)

id:soft_kei No.1

soft_kei回答回数29ベストアンサー獲得回数02005/09/05 22:49:22

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

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

URLはダミーです。


こんな方法もあります。

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

id:kenpo43

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

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

2005/09/05 22:59:30
id:Kumappus No.2

くまっぷす回答回数3784ベストアンサー獲得回数1852005/09/05 22:58:31

ポイント100pt

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

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

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

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

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

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

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

id:kenpo43

おおっ。

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

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

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

2005/09/05 23:08:22
id:soft_kei No.3

soft_kei回答回数29ベストアンサー獲得回数02005/09/05 23:02:12

あれ?

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


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

id:kenpo43

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

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

 ●

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

2005/09/05 23:12:52
id:borin No.4

borin回答回数2053ベストアンサー獲得回数02005/09/05 23:28:17

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

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

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

よくある質問など。

id:kenpo43

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

2005/09/06 00:27:56
id:name_mm No.5

name_mm回答回数94ベストアンサー獲得回数02005/09/06 10:55:51

ポイント300pt

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

id:kenpo43

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

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

2005/09/10 16:57:00

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません