回答編集履歴
2
しゅうせい2
test
CHANGED
@@ -100,8 +100,6 @@
|
|
100
100
|
|
101
101
|
Excelはできる限りがんばったけど解決できずエラーとなります。
|
102
102
|
|
103
|
-
※その前にSet句がない部分でエラーとなっていますけど。
|
104
|
-
|
105
103
|
|
106
104
|
|
107
105
|
型を意識していないと思わぬ結果となりますよ、という話です。
|
1
修正
test
CHANGED
@@ -1,8 +1,6 @@
|
|
1
1
|
受け取りたい型は?
|
2
2
|
|
3
3
|
---
|
4
|
-
|
5
|
-
sTempの型宣言について記載がなく、質問本文からも読み取れなかったのですが、
|
6
4
|
|
7
5
|
`sTemp = wSh.Range(Cells(2, 3))`
|
8
6
|
|
@@ -16,7 +14,7 @@
|
|
16
14
|
|
17
15
|
|
18
16
|
|
19
|
-
前者であれば、
|
17
|
+
前者(セルの値の代入)であれば、
|
20
18
|
|
21
19
|
`sTemp = wSh.Cells(2, 3).Value`
|
22
20
|
|
@@ -24,17 +22,25 @@
|
|
24
22
|
|
25
23
|
|
26
24
|
|
25
|
+
単一のセル範囲指定になっていればRangeプロパティを使って
|
26
|
+
|
27
|
+
`sTemp = wSh.Range(wSh.Cells(2, 3), wSh.Cells(2, 3)).Value`
|
28
|
+
|
29
|
+
としても取得できると思います。
|
30
|
+
|
31
|
+
しかし複数セル範囲が指定されたらエラーがおきそうです。
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
|
27
|
-
後者の場合、オブジェクトの代入になるのでSet句が必要です。
|
37
|
+
後者(Rangeオブジェクトを代入)の場合、オブジェクトの代入になるのでSet句が必要です。
|
28
38
|
|
29
39
|
`Set sTemp = wSh.Cells(2, 3)`
|
30
40
|
|
31
41
|
または
|
32
42
|
|
33
43
|
`Set sTemp = wSh.Range(wSh.Cells(2, 3), wSh.Cells(2, 3))`
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
当面の問題はこれで解決するのではないでしょうか?
|
38
44
|
|
39
45
|
|
40
46
|
|