![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_06.png?5a7ff87)
まだVB歴1年ないので説明もうまくできないかも知れませんが
どなたか教えていただければ助かります。
Dim cn as ADODB.Connection
Dim rs as ADODB.Recordset
Set cn = New ADODB.Connection
cn.IsolationLevel = adXactRepeatabelRead
cn.Open *****
Set rs = New ADODB.Recordset
rs.CursorType = adOpenDynamic
rs.LockType = asLockPessimistic
rs.ActiveConnection = cn
rs.Open *****
上記のように設定したのち
データ読み込み
rs.MoveFirst
Do until rs.EOF
aaa = rs.Fields("ID").Value
中略
rs.MoveNext
Loop
ファイルクローズして他の処理したのち
再びファイルオープンして
rs.MoveFirst
For ***
Set rs = cn.Execute("UPDATE テーブル名 SET ID = ***** ")
中略
rs.MoveNext
Next ***
ファイルクローズ
上記のMoveNextがおかしいと思うのですが
他のところかもしれませんが悩んでいます。
この内容でわかっていただけるか心配ですが
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
レコードを読んで、更新をかけるのであれば、
コネクションのExecuteメソッドではなく、レコードセットのUpdateメソッドを使わなくてはなりません。
Executeメソッドの戻り値は、レコードセットオブジェクトじゃありませんので、「Set rs = cn.Execute("UPDATE テーブル名 SET ID = ***** ") 」でおかしなこと(エラーになるんじゃ?)になっていると思うのです。
レコードを読む必要がないのであれば、Executeだけで良いですよ。
No.2
- 回答日時:
2つ目のループがおかしいですね。
ループではrsを回していますが、その中でrsを使って別のレコードセットを取得しちゃってます。
rs以外の変数を使ってみて下さい。
ありがとうございました。まだまだ勉強不足でわからないことばかりで
理解するのも一苦労ですが、昨日うまく動作しました。本当に助かりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Access(アクセス) DoCmd.SearchForRecord が動かない時の解決方法 3 2022/07/22 15:31
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Access(アクセス) 実行時エラー3131 FROM 句の構文エラーです について 7 2022/06/13 15:45
- Access(アクセス) docmd.gotorecordを起動するには 5 2022/06/17 15:20
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- 国産車 ホンダフィット2代GE6に乗っていますが RSというのはスポーティーですか 1 2023/06/01 15:09
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
ADOのMoveNextでアプリケーションエラー
Access(アクセス)
-
エラー(型が一致しません。)の対処方法
Visual Basic(VBA)
-
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
-
4
ADO VBA 実行時エラー3021
Visual Basic(VBA)
-
5
アクセス VBAについて FROM句の構文エラー
Access(アクセス)
-
6
SQLの速度をあげるには・・・
Visual Basic(VBA)
-
7
ADOのCursorLocationプロパティ
Visual Basic(VBA)
-
8
Access サブフォームでの選択行の取得
その他(データベース)
-
9
INSERT INTO ステートメントに認識できないフィールド
その他(データベース)
-
10
レコードが存在しなかった場合
Microsoft ASP
-
11
実行時エラー3131 FROM 句の構文エラーです について
Access(アクセス)
-
12
カレントレコードが無い事を判定させる方法
Visual Basic(VBA)
-
13
Access VBAで行ラベルが定義されていないというエラーが出ます
Access(アクセス)
-
14
ADOを使ったDBアクセス後のメモリ解放
その他(データベース)
-
15
MoveNextの処理速度は?
Visual Basic(VBA)
-
16
AccessのRefresh・Requery・Repaintの違い
Access(アクセス)
-
17
ACCESS ADOでupdateが効かない
その他(データベース)
-
18
アクセスVBAのMe!と[ ]
Access(アクセス)
-
19
「#エラー」の回避
Access(アクセス)
-
20
ACCESS VBA レコードセットの参照方法について
その他(データベース)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAで、条件に一致する...
-
Range クラスのAutoFitプロパテ...
-
Refreshメソッドの使い方
-
メソッドの英単語の意味について
-
java mainメソッドの正常・異常...
-
配列のメソッド
-
InetAddress#getHostNameについ...
-
javaで、引数が文字列型、戻り...
-
ImageMagickの説明書
-
DataGridViewの再描画。
-
FEM解析の読み方は?
-
Java print()とprintf()について
-
ExcelVBA Findメソッドで検索の...
-
for文(拡張)内の変数(ローカ...
-
mainメソッドのthrows節で設定...
-
C#.net Define文
-
マインスイーパの作り方
-
順番はある?
-
MVCモデルでのサーブレットのや...
-
DataGridViewでセルクリックイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBAで、条件に一致する...
-
mainメソッドのthrows節で設定...
-
final修飾子を使っているのに、...
-
Labelコントロールに数字を代入...
-
onClickで関数呼出し後に、結果...
-
DataGridViewでセルクリックイ...
-
JSPで<SELECT>の中にDBから持っ...
-
コマンドプロンプト実行後に画...
-
Refreshメソッドの使い方
-
エクセルVBAにおけるON TIMEメ...
-
boolean型のフィールドとゲッタ...
-
javascriptからjavaを呼び出したい
-
VBPをダブルクリックするとたま...
-
配列のメソッド
-
【sendkeysメソッドが動かずに...
-
Excel VBA でExcelを終了したい...
-
VB.netで、シリアル通信のタイ...
-
worksheets & rows メソッドは...
-
Application.Wait の参照設定
-
(String args[])というメッソ...
おすすめ情報