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

※最高500pt※エクセルVBAの質問です。楽天RSSを利用して、VBAを作っているという状況です。
以下のようなマクロを作りたいです。
A B C
1,銘柄コード 銘柄名称 現在値

2,9984

3,4753

※上記は、A1セルから、C3セルを表しているつもりです。
そして、文字がない、B2などは空白の意味です。

そして、ユーザーフォーム or シート上のボタンを押すと、以下のような処理を実現したいです。
B2のセルに、A2のセルの内容である9984を相対参照($a2形式)したいのと、B1のセルの内容である
(銘柄名称)を、絶対参照($b$1形式)したいのです。

そして、最終的には、【B2】のセルに、以下の式を挿入したいのです。
=RSS|'9984.T'!銘柄名称

です。

そして、楽天RSSを利用すると、B2には、ソフトバンクと表れるという結果になります。
最終的には、A列に銘柄コードを記載して、今回の処理を行って、B列には銘柄名称を
ズラーッと表示させたいと思います。

結局わからないのは、どのようにしてVBAで相対参照すればよいのかということですが、
よろしくお願いいたします。

●質問者: kenpo43
●カテゴリ:ウェブ制作
✍キーワード:A1 b2 C3 RSS VBA
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● WANT
●27ポイント

ActiveCell.Address絶対参照と相対参照ができると思います。

詳しくは以下のサイトをどうぞ。

http://www.moug.net/tech/exvba/0050094.htm


2 ● graygreen127
●100ポイント

Sub Macro_for_RSS()

Dim k As Long

k = 2

Do

If Cells(k, 1) = "" Then Exit Do

Cells(k, 2) = "RSS|" & Cells(k, 1) & Cells(1, 2)

k = k + 1

Loop

End Sub

Cellsの次の()の中最初の数字が行番号で、次の数字が列番号です。セル"A2"はcells(2,1)であらわせます。


3 ● imuyaiad
●100ポイント ベストアンサー

これでいかがでしょうか。

シート内にボタンをつくりそこの

このマクロを登録すれば動きます。

Sub マクロ()

Dim i As Integer

Dim j As Integer

'=====

'A列の何番目の行まで数値が入っているかを確認する

i = 1

Do While Cells(i, 1) > 0

i = i + 1

Loop

'確認終了

'====

'====

'B列へ入力する

j = 2

Do Until i <= j

Cells(j, 2) = "RSS|'" & Cells(j, 1) & ".T!" + Cells(1, 2)

j = j + 1

Loop

'入力完了

'====

End Sub

関連質問


●質問をもっと探す●



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