回答編集履歴

1

3109さまの回答を踏まえ、Variant型配列を用いたコードに書き換えました。

2018/08/25 23:51

投稿

TanakaHiroaki
TanakaHiroaki

スコア1063

test CHANGED
@@ -2,10 +2,44 @@
2
2
 
3
3
  ```ここに言語を入力
4
4
 
5
- For cnt = 1 To 256
5
+ Option Explicit
6
6
 
7
- Cells(cnt, 販売価格_列).Formula = "= Cells(" & cnt & ", " & 市場価格_列 & ")"
7
+ Option Base 1
8
8
 
9
+
10
+
11
+ Sub hoge()
12
+
13
+ Dim 市場価格_列 As Long: 市場価格_列 = 1
14
+
15
+ Dim 販売価格_列 As Long: 販売価格_列 = 2
16
+
17
+
18
+
19
+ Dim Vlist() As Variant
20
+
21
+ ReDim Vlist(256, 1)
22
+
23
+
24
+
25
+ Dim cnt As Long
26
+
27
+
28
+
29
+ For cnt = 1 To 256
30
+
31
+ Vlist(cnt, 1) = CStr("=" & Cells(cnt, 市場価格_列).Address)
32
+
9
- Next cnt
33
+ Next cnt
34
+
35
+
36
+
37
+ Range(Cells(1, 販売価格_列), Cells(256, 販売価格_列)).Formula = Vlist
38
+
39
+ End Sub
10
40
 
11
41
  ```
42
+
43
+ 3109さまの回答を踏まえ、コードを修正しました。
44
+
45
+ Variant型配列でセルへの転記処理を高速化できます。