回答編集履歴

1

追記しました

2019/09/13 08:03

投稿

h.horikoshi
h.horikoshi

スコア505

test CHANGED
@@ -11,3 +11,47 @@
11
11
 
12
12
 
13
13
  ThisWorkBook.Worksheets("Sheet1").Range(Cells(1, 1) …
14
+
15
+
16
+
17
+ 追記 ------------------
18
+
19
+
20
+
21
+ ああ、すいません。
22
+
23
+ test1.xlsx をオープンすることで test1.xlsxにActivateが移動して
24
+
25
+ しまっていますので、cellsにも修飾が必要でした。
26
+
27
+
28
+
29
+ cellsに対しても同じ記述をすればよいのですが、記述がゴチャゴチャ
30
+
31
+ してしまいますので、以下のいずれかを試してみてください。
32
+
33
+
34
+
35
+ (1)ActivateをThisworkBookのsheet1に切り替えてから操作する
36
+
37
+ ```
38
+
39
+ ThisWorkbook.Worksheets("Sheet1").Activate
40
+
41
+ Range(Cells(1, 1), Cells(3, 1)).Value = tmp
42
+
43
+ ```
44
+
45
+
46
+
47
+ (2)Worksheetを変数に入れて使う
48
+
49
+ ```
50
+
51
+ Dim self As Worksheet: Set self = ThisWorkbook.Worksheets("Sheet1")
52
+
53
+ self.Range(self.Cells(1, 1), self.Cells(3, 1)).Value = tmp
54
+
55
+ Set self = Nothing
56
+
57
+ ```