ここから本文です

オブジェクト変数または With ブロック変数が設定されていません。

mag********さん

2009/5/2615:48:47

オブジェクト変数または With ブロック変数が設定されていません。

お世話になります。
MDBからADPに変えたところ、下のコードが実行されると、タイトルのとおりのエラーが出てしまいます。
色々調べたのですが、わからなかったのでお知恵をお貸しください。。。

Dim db As DAO.Database
Dim Rst1 As DAO.Recordset
Dim strsql As String
Dim wStrymd As Date
Dim wEndymd As Date
Dim wDate As Date
Dim wSeqNo As Long
Dim wKtacod As Long
Dim wHAYKBN As Integer
Dim wSYOKUw As Integer

For wDate = wStrymd To wEndymd
strsql = ""
strsql = strsql & "select "
strsql = strsql & " * "
strsql = strsql & " from "
strsql = strsql & " D_勤怠"
strsql = strsql & " where "
strsql = strsql & " KND_DATE = '" & Format(wDate, "yyyy/mm/dd") & "' and "
strsql = strsql & " KND_SYACOD = " & Nz(Me.Fil社員証番号, 0) & ""
Set Rst1 = db.OpenRecordset(strsql, dbOpenDynaset)

If Rst1.EOF Then
Rst1.AddNew
Rst1!KND_NO = wSeqNo
Rst1!KND_BUMCOD = 1
Rst1!KND_SYACOD = Nz(Me.Fil社員証番号, 0)
Rst1!KND_KANRICOD = DLookup("SYA_KANRICOD", "M_社員", "SYA_COD=" & Me.Fil社員証番号)
Rst1!KND_DATE = wDate
Rst1!KND_MONTH = DLookup…
Rst1!KND_KNMKBN = IIf(DLookup…



Rst1!KND_SINTEA = IIf(DLookup…
Rst1!KND_SYOKU = IIf(DLookup…
Rst1.Update
wSeqNo = wSeqNo + 1
End If
Next

エラーは"If Rst1.EOF Then"のところで出てしまいます。これと同じような書き方をしたところもすべて同じエラーで止まってしまいます。。。
見難いとは思いますがよろしくお願いします。。。

閲覧数:
3,280
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

30246kikuさん

2009/5/2617:19:15

" KND_DATE = '" & Format(wDate, "yyyy/mm/dd") & "' and "

↓以下にしたらどうなりますか

" KND_DATE = #" & Format(wDate, "yyyy/mm/dd") & "# and "


※ Rst1!KND_DATE = wDate より日付/時刻型ですよね

※ Rst1 に設定するだけなら、Where 条件はいらないのでは???

質問した人からのコメント

2009/5/27 13:18:41

一安心 MDBなら#でよかったのですが、ADPだと’じゃないと日付として認識してくれませんので、’であっていると思います。
また、別サイトで質問をしたところ、上記のようなDAOはADPでは使えないとのことでした。
なのでADOを使って再びコーディングしてみたいと思います。

ありがとうございました。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる