回答編集履歴

2

コメントにともない編集

2020/02/06 08:28

投稿

per_
per_

スコア41

test CHANGED
@@ -44,33 +44,37 @@
44
44
 
45
45
 
46
46
 
47
- Dim pv(1, 3) As Variant
47
+ Dim pv(49, 3) As Variant
48
48
 
49
49
  '2行4列の配列を作成します
50
50
 
51
51
  '※配列は0番から始まります
52
52
 
53
- 'URLの種類が増えた分だけ行数を増やしてください
53
+ '[URL]の種類が増えた分だけ行数を増やしてください
54
+
55
+ '[/topics/2019/]で1行、[/interview/2020/]で2行
54
56
 
55
57
  '1列:URL名、2列:PV数、3列:ML、4列:バナー
56
58
 
57
59
 
58
60
 
59
-
60
61
 
61
- Sheets("重複削除").Activate
62
62
 
63
- lastcol = Sheets("重複削除").Range("A1").End(xlDown).Row
63
+   '②:シート名称修正。データシートにはURLとPVの情報が載っているようにしてください。
64
64
 
65
-
65
+ Sheets("データ").Activate
66
66
 
67
- Sheets("重複削除").Columns(2).Insert
67
+ lastcol = Sheets("データ").Range("A1").End(xlDown).Row
68
68
 
69
- Sheets("重複削除").Range("A:A").TextToColumns Other:=True, OtherChar:="?"
70
69
 
71
-
72
70
 
71
+ Sheets("データ").Columns(2).Insert
72
+
73
+ Sheets("データ").Range("A:A").TextToColumns Other:=True, OtherChar:="?"
74
+
75
+
76
+
73
- '2行目から最終行までくりかえし処理
77
+ '2行目から記載されている最終行(1000行程度?)までくりかえし処理
74
78
 
75
79
  For n = 2 To lastcol
76
80
 
@@ -106,12 +110,14 @@
106
110
 
107
111
 
108
112
 
109
- Sheets("結果ページ").Activate
113
+ Sheets("結果").Activate     '②:修正
110
114
 
111
- Range("A2").Value = pv
115
+ Range("A2").Resize(50, 4) = pv '③:修正
112
116
 
113
117
 
114
118
 
115
119
  End Sub
116
120
 
121
+
122
+
117
123
  ```

1

回答の追記

2020/02/06 08:28

投稿

per_
per_

スコア41

test CHANGED
@@ -1,3 +1,19 @@
1
+ 回答の前に…
2
+
3
+ エクセルを開いた状態で`Alt + F11`を押すとエディターを開くことができます。
4
+
5
+ (質問者さんがマクロの結果をコピーした画面です)
6
+
7
+ 実行したい`Sub`にカーソルをおいた状態で`F8キー`を押すとコードを1行ずつ確認していくことができます。
8
+
9
+ 各行がどんな動作をしているのか確かめながら書き換えていくと良いでしょう。
10
+
11
+ 参考:[マクロの編集の基本](https://vbabeginner.net/%E3%83%9E%E3%82%AF%E3%83%AD%E3%81%AE%E7%B7%A8%E9%9B%86%E3%81%AE%E5%9F%BA%E6%9C%AC/)
12
+
13
+
14
+
15
+
16
+
1
17
  ワークシートの関数は処理が重くなりがちなので
2
18
 
3
19
  VBA上で計算して結果シートに貼り付けまで行えるようにしたほうが良いと思います。