ACCESS2000を言語(ASP,VBS)でテーブルのデータをもう一つのテーブルに書き込む処理を行っています。以下のコードで処理を行って
いますが、どうしても最後の行だけ書き込むことができません。

他のサイトで調べたところ、テーブルに書き込み処理を行った
後に、Excelで出力しているため、書き込み処理を行なう前に
次の処理が走ってしまうとの記事がありました。

そこで、sleepを書き込み処理後に書いたのですがどうやら関係
ないようです。
基本的な質問かもしれませんが、ご教授いただけると助かります。

以下コード
do while not oRec_Q_W_Reg2Data.EOF
oRec_Q_W_RegWData.addnew
  oRec_Q_W_RegWData.Fields("Hantei") =  oRec_Q_W_Reg2Data.Fields("Hantei")
  oRec_Q_W_Reg2Data.Movenext
loop
bobj.Sleep 10
Response.Write("このメッセージは10秒後に出力されます")↓

このQ&Aに関連する最新のQ&A

A 回答 (2件)

oRec_Q_W_RegWData.addnew


  oRec_Q_W_RegWData.Fields("Hantei") =  oRec_Q_W_Reg2Data.Fields("Hantei")
  oRec_Q_W_Reg2Data.Movenext
loop

↓以下のように Update を入れてはどうでしょう

oRec_Q_W_RegWData.addnew
  oRec_Q_W_RegWData.Fields("Hantei") =  oRec_Q_W_Reg2Data.Fields("Hantei")
  oRec_Q_W_Reg2Data.Movenext
oRec_Q_W_RegWData.Update
loop
    • good
    • 0
この回答へのお礼

御指摘のとおり、直してみたところ
無事書き込まれました。
ありがとうございました。助かりました。

お礼日時:2009/05/29 14:14

VBS等よく知りませんが、ざっと見たところでは


NEXT
で、書き込みが行われているようです。最後の行に対してはNEXTが発生しないため、書き込みできない。
POST
みたいな命令はないでしょうか?
最悪、直前のレコードに移動すれば、書き込みが発生するでしょう。
    • good
    • 0
この回答へのお礼

以上のやり方で問題は解決しました。
ただ最後の行でNEXTは発生しないことは、気づかなかったです。
ありがとうございました。

お礼日時:2009/05/29 14:15

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング