teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

5

質問内容を具体的に修正

2020/05/25 09:59

投稿

gudeo
gudeo

スコア0

title CHANGED
File without changes
body CHANGED
@@ -9,8 +9,6 @@
9
9
 
10
10
  上記のようなエクセルでA2セルを選択した状態で登録ボタンを押すと、B2~G2セルの値を取得するようなVBAなのですが、この作業を300回繰り返すVBAを教えて頂けないでしょうか?
11
11
  上記の例でいうとB3~G3,B4~G4,B5~G5の値を取得する作業を300回繰り返したいです。
12
- 基本的なFor Nextでできると思うのですが、VBAの知識が乏しく大変恐縮なのですがどなたか下記コードを基にしてご教授頂けないでしょうか?
13
- 何卒、宜しくお願いします。
14
12
 
15
13
  Private Sub CommandButton1_Click()
16
14
  a_col = ActiveCell.Column
@@ -31,4 +29,10 @@
31
29
  Selection.Value = "=RSS|'" & code & ".TJ'!安値"
32
30
  End If
33
31
 
34
- End Sub
32
+ End Sub
33
+
34
+ A2セル選択→登録ボタンクリック、A3セル選択→登録ボタンクリックを繰り返し行いたいのですが、
35
+ For i = 1 To 300
36
+ Next i
37
+ をどの部分に入れたらよいのかと改行する際の方法が分かりません。
38
+ 宜しくお願いします。

4

コード変更

2020/05/25 09:59

投稿

gudeo
gudeo

スコア0

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,6 @@
1
1
  登録ボタン
2
2
 
3
- A   B   C D E F G
3
+    A   B      C D E F G
4
4
  1 銘柄コード 銘柄名称  前日終値 始値 現在値 高値 安値
5
5
  2  2914   日本たばこ産業 2006 2022 2032 2033 2016
6
6
  3 4568
@@ -13,23 +13,22 @@
13
13
  何卒、宜しくお願いします。
14
14
 
15
15
  Private Sub CommandButton1_Click()
16
- a_col = ActiveCell.Column
16
+ a_col = ActiveCell.Column
17
- a_row = ActiveCell.Row
17
+ a_row = ActiveCell.Row
18
- code = Cells(a_row, a_col).Value
18
+ code = Cells(a_row, a_col).Value
19
- If code <> "" Then
19
+ If code <> "" Then
20
- Selection.Offset(0, 1).Select '1行ずらす
20
+ Selection.Offset(0, 1).Select '1行ずらす
21
- Selection.Value = "=RSS|'" & code & ".TJ'!銘柄名称"
21
+ Selection.Value = "=RSS|'" & code & ".TJ'!銘柄名称"
22
- Selection.Offset(0, 1).Select '1行ずらす
22
+ Selection.Offset(0, 1).Select '1行ずらす
23
- Selection.Value = "=RSS|'" & code & ".TJ'!前日終値"
23
+ Selection.Value = "=RSS|'" & code & ".TJ'!前日終値"
24
- Selection.Offset(0, 1).Select '1行ずらす
24
+ Selection.Offset(0, 1).Select '1行ずらす
25
- Selection.Value = "=RSS|'" & code & ".TJ'!始値"
25
+ Selection.Value = "=RSS|'" & code & ".TJ'!始値"
26
- Selection.Offset(0, 1).Select '1行ずらす
26
+ Selection.Offset(0, 1).Select '1行ずらす
27
- Selection.Value = "=RSS|'" & code & ".TJ'!現在値"
27
+ Selection.Value = "=RSS|'" & code & ".TJ'!現在値"
28
- Selection.Offset(0, 1).Select '1行ずらす
28
+ Selection.Offset(0, 1).Select '1行ずらす
29
- Selection.Value = "=RSS|'" & code & ".TJ'!高値"
29
+ Selection.Value = "=RSS|'" & code & ".TJ'!高値"
30
- Selection.Offset(0, 1).Select '1行ずらす
30
+ Selection.Offset(0, 1).Select '1行ずらす
31
- Selection.Value = "=RSS|'" & code & ".TJ'!安値"
31
+ Selection.Value = "=RSS|'" & code & ".TJ'!安値"
32
- End If
32
+ End If
33
33
 
34
-
35
34
  End Sub

3

コード変更

2020/05/25 09:02

投稿

gudeo
gudeo

スコア0

title CHANGED
File without changes
body CHANGED
@@ -32,11 +32,4 @@
32
32
  End If
33
33
 
34
34
 
35
- End Sub
36
-
37
-
38
-
39
-
40
-
41
-
42
35
  End Sub

2

コード変更

2020/05/25 08:58

投稿

gudeo
gudeo

スコア0

title CHANGED
File without changes
body CHANGED
@@ -17,19 +17,26 @@
17
17
  a_row = ActiveCell.Row
18
18
  code = Cells(a_row, a_col).Value
19
19
  If code <> "" Then
20
- Selection.Offset(0 + i, 1).Select '1行ずらす
20
+ Selection.Offset(0, 1).Select '1行ずらす
21
21
  Selection.Value = "=RSS|'" & code & ".TJ'!銘柄名称"
22
- Selection.Offset(0 + i, 1).Select '1行ずらす
22
+ Selection.Offset(0, 1).Select '1行ずらす
23
23
  Selection.Value = "=RSS|'" & code & ".TJ'!前日終値"
24
- Selection.Offset(0 + i, 1).Select '1行ずらす
24
+ Selection.Offset(0, 1).Select '1行ずらす
25
25
  Selection.Value = "=RSS|'" & code & ".TJ'!始値"
26
- Selection.Offset(0 + i, 1).Select '1行ずらす
26
+ Selection.Offset(0, 1).Select '1行ずらす
27
27
  Selection.Value = "=RSS|'" & code & ".TJ'!現在値"
28
- Selection.Offset(0 + i, 1).Select '1行ずらす
28
+ Selection.Offset(0, 1).Select '1行ずらす
29
29
  Selection.Value = "=RSS|'" & code & ".TJ'!高値"
30
- Selection.Offset(0 + i, 1).Select '1行ずらす
30
+ Selection.Offset(0, 1).Select '1行ずらす
31
31
  Selection.Value = "=RSS|'" & code & ".TJ'!安値"
32
32
  End If
33
33
 
34
34
 
35
+ End Sub
36
+
37
+
38
+
39
+
40
+
41
+
35
42
  End Sub

1

コード追加

2020/05/25 08:57

投稿

gudeo
gudeo

スコア0

title CHANGED
File without changes
body CHANGED
@@ -9,5 +9,27 @@
9
9
 
10
10
  上記のようなエクセルでA2セルを選択した状態で登録ボタンを押すと、B2~G2セルの値を取得するようなVBAなのですが、この作業を300回繰り返すVBAを教えて頂けないでしょうか?
11
11
  上記の例でいうとB3~G3,B4~G4,B5~G5の値を取得する作業を300回繰り返したいです。
12
- 基本的なFor Nextでできると思うのですが、VBAの知識が乏しく大変恐縮なのですがどなたかご教授頂けないでしょうか?
12
+ 基本的なFor Nextでできると思うのですが、VBAの知識が乏しく大変恐縮なのですがどなたか下記コードを基にしてご教授頂けないでしょうか?
13
- 何卒、宜しくお願いします。
13
+ 何卒、宜しくお願いします。
14
+
15
+ Private Sub CommandButton1_Click()
16
+ a_col = ActiveCell.Column
17
+ a_row = ActiveCell.Row
18
+ code = Cells(a_row, a_col).Value
19
+ If code <> "" Then
20
+ Selection.Offset(0 + i, 1).Select '1行ずらす
21
+ Selection.Value = "=RSS|'" & code & ".TJ'!銘柄名称"
22
+ Selection.Offset(0 + i, 1).Select '1行ずらす
23
+ Selection.Value = "=RSS|'" & code & ".TJ'!前日終値"
24
+ Selection.Offset(0 + i, 1).Select '1行ずらす
25
+ Selection.Value = "=RSS|'" & code & ".TJ'!始値"
26
+ Selection.Offset(0 + i, 1).Select '1行ずらす
27
+ Selection.Value = "=RSS|'" & code & ".TJ'!現在値"
28
+ Selection.Offset(0 + i, 1).Select '1行ずらす
29
+ Selection.Value = "=RSS|'" & code & ".TJ'!高値"
30
+ Selection.Offset(0 + i, 1).Select '1行ずらす
31
+ Selection.Value = "=RSS|'" & code & ".TJ'!安値"
32
+ End If
33
+
34
+
35
+ End Sub