回答編集履歴
3
説明修正
answer
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
SQLを使うなら、saziさんの回答のような方法で一気にするのがいいでしょう。
|
6
6
|
|
7
|
-
レコードセットでの追加はAddNewメソッド、更新はEditメソッドを使います。
|
7
|
+
レコードセットでの追加はAddNewメソッド~~、更新はEditメソッド~~を使います。代入後、Updateメソッドで更新します。
|
8
8
|
|
9
9
|
下記のようなコードになります。
|
10
10
|
|
2
コード修正
answer
CHANGED
@@ -13,11 +13,9 @@
|
|
13
13
|
With adoRS2
|
14
14
|
.MoveFirst
|
15
15
|
.Find "日付け = #" & adoRS1!日付け.Value & "#", 0, adSearchForward
|
16
|
-
If adoRS2.EOF Then '同じ日付けのレコードがなければ
|
16
|
+
If adoRS2.EOF Then '同じ日付けのレコードがなければ新規追加
|
17
17
|
.AddNew
|
18
18
|
!日付け.Value = adoRS1!日付け.Value
|
19
|
-
Else
|
20
|
-
.Edit
|
21
19
|
End If
|
22
20
|
!終値.Value = adoRS1!終値.Value
|
23
21
|
!始値.Value = adoRS1!始値.Value
|
1
説明追記
answer
CHANGED
@@ -29,4 +29,13 @@
|
|
29
29
|
Loop
|
30
30
|
```
|
31
31
|
|
32
|
-
検索(Findメソッド)すれば adoRS2.MoveNext は不要。また、検索の方が高速。
|
32
|
+
検索(Findメソッド)すれば adoRS2.MoveNext は不要。また、検索の方が高速。
|
33
|
+
|
34
|
+
|
35
|
+
> ・デバッグでF8を押しながら一行ずつ確認、adoRS2.MoveNext行を通過後
|
36
|
+
イミディエイトウィンドウにて[?adoRS2("日付け")]と確認するも値の変更なし
|
37
|
+
・IF文の中にadoRS2.MoveNextを書いても値の変化無し、IFの外に書いても値の変化無し。
|
38
|
+
|
39
|
+
> この原因についてお分かりになる方いらっしゃいましたら、ご教示願います。
|
40
|
+
|
41
|
+
これに関しては、SQL の Update文に抽出条件がないので、すべてのレコードを更新してしまってます。それによってすべてのレコードの日付が同じになってしまいますので、レコード移動しても日付は同じになるというこかと推測します。
|