質問編集履歴

10

修正

2020/05/20 00:41

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,84 +1,6 @@
1
- Sheet2のa、bのデータを上から順にSheet1のC23,24に代入し、結果x、y、zを別のSheet3に出力したいです。
1
+ Sheet2のa、bのデータを上から順にSheet1に代入し、結果x、y、zを別のSheet3に出力したいです。
2
2
 
3
3
  計算はできたのですがSheet3に出力が上手くいきません。
4
-
5
-
6
-
7
- Sheet1
8
-
9
- ・ A B C       D E F
10
-
11
- 23 u
12
-
13
- 24 v
14
-
15
- 25
16
-
17
- 26 座標計算
18
-
19
- 27 k11-k31*u  k12-k32*u k13-k33*u
20
-
21
- 28 k21-k31*v  k22-k32*v k23-k33*v 計算
22
-
23
- 29 p1     p2       p3
24
-
25
- 30
26
-
27
- 31 逆行列
28
-
29
- 32 k11-k31*u k12-k32*u k13-k33*u
30
-
31
- 33 k21-k31*v k22-k32*v k23-k33*v      MINVERSE
32
-
33
- 34 p1 p2 p3
34
-
35
- 35
36
-
37
- 36 u-k14
38
-
39
- 37 v-k24 計算
40
-
41
- 38 -1
42
-
43
- 39
44
-
45
- 40 x
46
-
47
- 41 y MMULT(D32:34,B36:B38)
48
-
49
- 42 z
50
-
51
-
52
-
53
- Sheet2
54
-
55
- ・ A B
56
-
57
- 1 u v
58
-
59
- 2 10 20
60
-
61
- 3 25 30
62
-
63
- ・ ・ ・
64
-
65
- 342 ・ ・
66
-
67
-
68
-
69
- Sheet3
70
-
71
- ・ A B C
72
-
73
- 1 x y z
74
-
75
- 2
76
-
77
- 3
78
-
79
- ・  
80
-
81
- 342
82
4
 
83
5
 
84
6
 

9

修正

2020/05/20 00:41

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
1
  Sheet2のa、bのデータを上から順にSheet1のC23,24に代入し、結果x、y、zを別のSheet3に出力したいです。
2
2
 
3
- For文を書いて実行してみたのですが"Range"メソッドは失敗しましたと出ましたどこがいけないのでしょうか?
3
+ 計算はできたのですがSheet3に力が上手くいきせん
4
4
 
5
5
 
6
6
 
@@ -108,13 +108,13 @@
108
108
 
109
109
 
110
110
 
111
- u = Range("Ai").Value
111
+ u = Range("A" & i).Value
112
112
 
113
113
  Debug.Print (u)
114
114
 
115
115
 
116
116
 
117
- v = Range("Bi").Value
117
+ v = Range("B" & i).Value
118
118
 
119
119
  Debug.Print (v)
120
120
 
@@ -136,4 +136,6 @@
136
136
 
137
137
  End Sub
138
138
 
139
+
140
+
139
141
  ```

8

修正

2020/05/19 13:52

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -66,9 +66,23 @@
66
66
 
67
67
 
68
68
 
69
+ Sheet3
70
+
71
+ ・ A B C
72
+
73
+ 1 x y z
74
+
75
+ 2
76
+
77
+ 3
78
+
79
+ ・  
80
+
81
+ 342
82
+
83
+
84
+
69
85
  ```
70
-
71
- VBA
72
86
 
73
87
  Sub Kamera()
74
88
 

7

修正

2020/05/19 13:31

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,34 +1,24 @@
1
- ```Sheet2 | Sheet1
2
-
3
- A B | A B C
4
-
5
- 1 u v | ・
6
-
7
- 2 10 20 | ・
8
-
9
- 3 25 30 | 23 u
10
-
11
- ・ ・ ・ | 24 v
12
-
13
- ・ ・ ・ |
14
-
15
-
16
-
17
1
  Sheet2のa、bのデータを上から順にSheet1のC23,24に代入し、結果x、y、zを別のSheet3に出力したいです。
18
2
 
19
3
  For文を書いて実行してみたのですが"Range"メソッドは失敗しましたと出ました。どこがいけないのでしょうか?
20
4
 
21
5
 
22
6
 
23
- Sheet1の式は
7
+ Sheet1
24
8
 
25
9
  ・ A B C       D E F
10
+
11
+ 23 u
12
+
13
+ 24 v
14
+
15
+ 25
26
16
 
27
17
  26 座標計算
28
18
 
29
19
  27 k11-k31*u  k12-k32*u k13-k33*u
30
20
 
31
- 28 k21-k31*v  k22-k32*v k23-k33*v 計算
21
+ 28 k21-k31*v  k22-k32*v k23-k33*v 計算
32
22
 
33
23
  29 p1     p2       p3
34
24
 
@@ -36,9 +26,9 @@
36
26
 
37
27
  31 逆行列
38
28
 
39
- 32 k11-k31*u k12-k32*u k13-k33*u
29
+ 32 k11-k31*u k12-k32*u k13-k33*u
40
30
 
41
- 33 k21-k31*v k22-k32*v k23-k33*v     MINVERSE
31
+ 33 k21-k31*v k22-k32*v k23-k33*v      MINVERSE
42
32
 
43
33
  34 p1 p2 p3
44
34
 
@@ -60,7 +50,23 @@
60
50
 
61
51
 
62
52
 
53
+ Sheet2
63
54
 
55
+ ・ A B
56
+
57
+ 1 u v
58
+
59
+ 2 10 20
60
+
61
+ 3 25 30
62
+
63
+ ・ ・ ・
64
+
65
+ 342 ・ ・
66
+
67
+
68
+
69
+ ```
64
70
 
65
71
  VBA
66
72
 

6

コードの挿入

2020/05/19 13:25

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- Sheet2 | Sheet1
1
+ ```Sheet2 | Sheet1
2
2
 
3
3
  A B | A B C
4
4
 
@@ -60,9 +60,9 @@
60
60
 
61
61
 
62
62
 
63
- VBA
64
63
 
65
64
 
65
+ VBA
66
66
 
67
67
  Sub Kamera()
68
68
 
@@ -115,3 +115,5 @@
115
115
 
116
116
 
117
117
  End Sub
118
+
119
+ ```

5

文法の修正

2020/05/19 13:17

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- Sheet1 | Sheet2
1
+ Sheet2 | Sheet1
2
2
 
3
3
  A B | A B C
4
4
 
@@ -14,13 +14,13 @@
14
14
 
15
15
 
16
16
 
17
- Sheet1のa、bのデータを上から順にSheet2のC23,24に代入し、結果x、y、zを別のSheet3に出力したいです。
17
+ Sheet2のa、bのデータを上から順にSheet1のC23,24に代入し、結果x、y、zを別のSheet3に出力したいです。
18
18
 
19
19
  For文を書いて実行してみたのですが"Range"メソッドは失敗しましたと出ました。どこがいけないのでしょうか?
20
20
 
21
21
 
22
22
 
23
- Sheet2の式は
23
+ Sheet1の式は
24
24
 
25
25
  ・ A B C       D E F
26
26
 

4

修正

2020/05/19 13:09

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -14,13 +14,9 @@
14
14
 
15
15
 
16
16
 
17
- Sheet1のa、bのデータを上から順にSheet2のC23,24に代入し、結果x、y、zを別のSheet3に出力したいです。vbaを用いて、一回一回のデータはできるのですが上から順に連続ですることが出来ません。
17
+ Sheet1のa、bのデータを上から順にSheet2のC23,24に代入し、結果x、y、zを別のSheet3に出力したいです。
18
18
 
19
-
20
-
21
- A2とB2代入x,y,zを出力するプログラムを作ってみたのですがSheet3に数式が有効でないセルを参照ているエラーがてしいました。
19
+ For文書いて実行してみたのですが"Range"メソッド失敗ましたと出ました。どこがいけないのでしょうか?
22
-
23
- 後、ここからFor文を加えたいのですがどうすればいいかわかりません。
24
20
 
25
21
 
26
22
 
@@ -64,20 +60,6 @@
64
60
 
65
61
 
66
62
 
67
-
68
-
69
- Sheet3のエラー
70
-
71
- ・ A B
72
-
73
- 1 x #REF!
74
-
75
- 2 y #REF!
76
-
77
- 3 z #REF!
78
-
79
-
80
-
81
63
  VBA
82
64
 
83
65
 
@@ -86,42 +68,50 @@
86
68
 
87
69
 
88
70
 
89
- Sheets("Sheet2").Select
71
+ Sheets("Sheet2").Select
90
72
 
91
73
 
92
74
 
93
- Dim u As Integer
75
+ Dim u As Integer
94
76
 
95
- u = Range("A2").Value
77
+ Dim v As Integer
96
78
 
97
- Debug.Print (u)
79
+ Dim i As Integer
98
80
 
81
+
99
82
 
83
+ For i = 2 To 342
100
84
 
101
- Dim v As Integer
85
+
102
86
 
103
- v = Range("B2").Value
87
+ Sheets("Sheet2").Select
104
88
 
105
- Debug.Print (v)
89
+
106
90
 
91
+ u = Range("Ai").Value
107
92
 
93
+ Debug.Print (u)
108
94
 
109
- Sheets("Sheet1").Range("C23") = u
95
+
110
96
 
97
+ v = Range("Bi").Value
98
+
99
+ Debug.Print (v)
100
+
101
+
102
+
103
+ Sheets("Sheet1").Range("C23") = u
104
+
111
- Sheets("Sheet1").Range("C24") = v
105
+ Sheets("Sheet1").Range("C24") = v
106
+
107
+
108
+
109
+ Sheets("Sheet1").Range("B40:B42").Copy Sheets("Sheet3").Range("Ai:Ci")
110
+
111
+
112
+
113
+ Next i
112
114
 
113
115
 
114
116
 
115
117
  End Sub
116
-
117
-
118
-
119
- Sub 実座標()
120
-
121
-
122
-
123
- Sheets("Sheet1").Range("B40:B42").Copy Sheets("Sheet3").Range("B1:B3")
124
-
125
-
126
-
127
- End Sub

3

見やすさ

2020/05/19 13:01

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,28 +1,16 @@
1
- Sheet1 Sheet2
1
+ Sheet1 Sheet2
2
2
 
3
- A B A B C
3
+ A B A B C
4
4
 
5
- 1 u v ・
5
+ 1 u v
6
6
 
7
- 2 10 20 ・
7
+ 2 10 20
8
8
 
9
- 3 25 30 23 u
9
+ 3 25 30 23 u
10
10
 
11
- ・ ・ ・ 24 v
11
+ ・ ・ ・ 24 v
12
12
 
13
- ・ ・ ・
13
+ ・ ・ ・ |
14
-
15
-
16
-
17
-
18
-
19
-          40 x
20
-
21
-          41 y 
22
-
23
- 42 z
24
-
25
-
26
14
 
27
15
 
28
16
 
@@ -38,7 +26,7 @@
38
26
 
39
27
  Sheet2の式は
40
28
 
41
- A B C D E F
29
+ A B C       D E F
42
30
 
43
31
  26 座標計算
44
32
 
@@ -80,7 +68,7 @@
80
68
 
81
69
  Sheet3のエラー
82
70
 
83
- A B
71
+ A B
84
72
 
85
73
  1 x #REF!
86
74
 

2

式の追加

2020/05/19 12:10

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -2,17 +2,17 @@
2
2
 
3
3
  A B A B C
4
4
 
5
- 1 a b
5
+ 1 u v
6
6
 
7
7
  2 10 20 ・
8
8
 
9
- 3 25 30 29 a
9
+ 3 25 30 23 u
10
10
 
11
- ・ ・ ・ 30 b
11
+ ・ ・ ・ 24 v
12
12
 
13
- ・ ・ ・
13
+ ・ ・ ・
14
14
 
15
-
15
+
16
16
 
17
17
 
18
18
 
@@ -26,7 +26,7 @@
26
26
 
27
27
 
28
28
 
29
- Sheet1のa、bのデータを上から順にSheet2のC29、30に代入し、結果x、y、zを別のSheet3に出力したいです。vbaを用いて、一回一回のデータはできるのですが上から順に連続ですることが出来ません。
29
+ Sheet1のa、bのデータを上から順にSheet2のC23,24に代入し、結果x、y、zを別のSheet3に出力したいです。vbaを用いて、一回一回のデータはできるのですが上から順に連続ですることが出来ません。
30
30
 
31
31
 
32
32
 
@@ -36,13 +36,61 @@
36
36
 
37
37
 
38
38
 
39
- x #REF!
39
+ Sheet2の式は
40
40
 
41
- y #REF!
41
+ A B C D E F
42
42
 
43
+ 26 座標計算
44
+
45
+ 27 k11-k31*u  k12-k32*u k13-k33*u
46
+
47
+ 28 k21-k31*v  k22-k32*v k23-k33*v 計算
48
+
49
+ 29 p1     p2       p3
50
+
51
+ 30
52
+
53
+ 31 逆行列
54
+
55
+ 32 k11-k31*u k12-k32*u k13-k33*u
56
+
57
+ 33 k21-k31*v k22-k32*v k23-k33*v     MINVERSE
58
+
59
+ 34 p1 p2 p3
60
+
61
+ 35
62
+
63
+ 36 u-k14
64
+
65
+ 37 v-k24 計算
66
+
43
- z #REF!
67
+ 38 -1
68
+
69
+ 39
70
+
71
+ 40 x
72
+
73
+ 41 y MMULT(D32:34,B36:B38)
74
+
75
+ 42 z
44
76
 
45
77
 
78
+
79
+
80
+
81
+ Sheet3のエラー
82
+
83
+ A B
84
+
85
+ 1 x #REF!
86
+
87
+ 2 y #REF!
88
+
89
+ 3 z #REF!
90
+
91
+
92
+
93
+ VBA
46
94
 
47
95
 
48
96
 
@@ -70,9 +118,9 @@
70
118
 
71
119
 
72
120
 
73
- Sheets("Sheet1").Range("C29") = u
121
+ Sheets("Sheet1").Range("C23") = u
74
122
 
75
- Sheets("Sheet1").Range("C30") = v
123
+ Sheets("Sheet1").Range("C24") = v
76
124
 
77
125
 
78
126
 
@@ -84,7 +132,7 @@
84
132
 
85
133
 
86
134
 
87
- Sheets("Sheet1").Range("B40:B42").Copy Sheets("Sheet3").Range("A2:C2")
135
+ Sheets("Sheet1").Range("B40:B42").Copy Sheets("Sheet3").Range("B1:B3")
88
136
 
89
137
 
90
138
 

1

プログラムの記載

2020/05/19 12:02

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -1,29 +1,91 @@
1
- Excel1 Excel2
1
+ Sheet1 Sheet2
2
2
 
3
- A B A B C
3
+ A B A B C
4
4
 
5
- 1 a b
5
+ 1 a b ・
6
6
 
7
7
  2 10 20 ・
8
8
 
9
- 3 25 30 29 a
9
+ 3 25 30 29 a
10
10
 
11
- ・ ・ ・ 30 b
11
+ ・ ・ ・ 30 b
12
12
 
13
13
  ・ ・ ・
14
14
 
15
-
15
+
16
16
 
17
17
 
18
18
 
19
-         40 x
19
+          40 x
20
20
 
21
-         41 y 
21
+          41 y 
22
22
 
23
- 42 z
23
+ 42 z
24
24
 
25
25
 
26
26
 
27
- Excel1のa、bのデータを上から順にExcel2のC29、30に代入し、結果x、y、zを別のExcel3に出力したいです。vbaを用いて、一回一回のデータはできるのですが上から順に連続ですることが出来ません。
28
27
 
28
+
29
+ Sheet1のa、bのデータを上から順にSheet2のC29、30に代入し、結果x、y、zを別のSheet3に出力したいです。vbaを用いて、一回一回のデータはできるのですが上から順に連続ですることが出来ません。
30
+
31
+
32
+
33
+ A2とB2を代入しx,y,zを出力するプログラムを作ってみたのですがSheet3に数式が有効ではないセルを参照しているエラーが出てしまいました。
34
+
35
+ 後、ここからFor文を加えたいのですがどうすればいいかわかりません。
36
+
37
+
38
+
39
+ x #REF!
40
+
41
+ y #REF!
42
+
43
+ z #REF!
44
+
45
+
46
+
47
+
48
+
29
- よろしくお願いします。
49
+ Sub Kamera()
50
+
51
+
52
+
53
+ Sheets("Sheet2").Select
54
+
55
+
56
+
57
+ Dim u As Integer
58
+
59
+ u = Range("A2").Value
60
+
61
+ Debug.Print (u)
62
+
63
+
64
+
65
+ Dim v As Integer
66
+
67
+ v = Range("B2").Value
68
+
69
+ Debug.Print (v)
70
+
71
+
72
+
73
+ Sheets("Sheet1").Range("C29") = u
74
+
75
+ Sheets("Sheet1").Range("C30") = v
76
+
77
+
78
+
79
+ End Sub
80
+
81
+
82
+
83
+ Sub 実座標()
84
+
85
+
86
+
87
+ Sheets("Sheet1").Range("B40:B42").Copy Sheets("Sheet3").Range("A2:C2")
88
+
89
+
90
+
91
+ End Sub