منتدى أحلـــى كـــلام
عزيزى الزائر

كونك زائر غير مسجل

* سيتم عرض اعلانات لك، هذه الاعلانات لا تظهر للاعظاء.
* لن تتمكن من مشاهدة بعض محتويات مواضيعنا.

ندعوك للتسجيل بأقل من دقيقة
* لتتمكن من مشاهدة كافة محتويات المواضيع التى ترغب فى قرآئتها .
* وقف عرض الاعلانات.

SiteAdmin

run time error 91

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

run time error 91

مُساهمة من طرف 123 في الأربعاء يونيو 16, 2010 9:15 am


Hi,

Can anyone please help me with my command button.
What it's suppose to do is if vbYes is chosen, then it will update a Field (fieldname "Approved") = True.
If vbNo then the updates will be deleted.

This command Save button is in a form which calls on a data table called TblCover to update the field.

When I run this code, it gives me the error "RUNTIME ERROR 91 - object variable or with block variable not set" amd it highlights the line " .Open ..."

Can anyone please help me?
==============================================
(Toggle Plain Text)

Private Sub cmdSave_Click()

Response = MsgBox("Has this been Signed and Approved?", vbYesNo vbCritical)

If Response = vbYes Then
Set ActiveConnection = TblCover
With rst
.Open "TblCover", cnn, adOpenDynamic, adLockOptimistic
.Fields("Approved").Value = True
.Update
DoCmd.Save acForm, "Cover"
End With

End If

If Response = vbNo Then
strText = MsgBox("You need to get Manager signature and Approval", vbCritical)
With rst
.Delete (adAffectCurrent)
.Close
End With
Set myRecordset = Nothing
Set conn = Nothing
End If

End Sub

123
عضو نشط
عضو نشط

عدد المساهمات : 34
نقاط : 164
تقييم العضو : 0
تاريخ التسجيل : 15/06/2010

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: run time error 91

مُساهمة من طرف SiteAdmin في الأربعاء يونيو 16, 2010 1:31 pm

Try below code to avoid adOpenDynamic, adLockOptimistic .

الكود:
Private Sub cmdSave_Click()

    Dim Response As VbMsgBoxResult
    Dim TblCoverId As Integer
    Dim TblCoverRS As DAO.Recordset
    TblCoverId = ID
   
    Response = MsgBox("Has this been Signed and Approved?", vbYesNo + vbCritical)
    If Response = vbYes Then
        Set TblCoverRS = CurrentDb.OpenRecordset("Select * from TblCover where ID = " & CStr(TblCoverId))
        TblCoverRS.OpenRecordset
        TblCoverRS.Edit
        TblCoverRS!Approved = True
        TblCoverRS.Update
        TblCoverRS.Close
       
    Else
        Set TblCoverRS = CurrentDb.OpenRecordset("Select * from TblCover where ID = " & CStr(TblCoverId))
        TblCoverRS.OpenRecordset
        TblCoverRS.Delete
    End If
   
      Set TblCoverRS = Nothing

End Sub


_________________
Best Regards
Site Administrator
avatar
SiteAdmin
Admin
Admin

عدد المساهمات : 333
نقاط : 2040
تقييم العضو : 6
تاريخ التسجيل : 09/06/2010
العمر : 43
الموقع : Banker

http://ahlakalam.to-relax.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: run time error 91

مُساهمة من طرف 123 في الأربعاء يونيو 16, 2010 7:54 pm

yep , thanks

123
عضو نشط
عضو نشط

عدد المساهمات : 34
نقاط : 164
تقييم العضو : 0
تاريخ التسجيل : 15/06/2010

الرجوع الى أعلى الصفحة اذهب الى الأسفل

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى