سؤال

وأنا أحاول أن إنشاء السجلات في Access VBA التي سوف تظهر لي كافة السجلات في الجدول المرتبط إلى السجل الحالي للنموذج. قانون بلدي الحالي يبدو مثل هذا:

Private Sub Form_Load()

    Dim rst As Recordset

    Set rst = CurrentDb.OpenRecordset("Select [ID], [Ln] From [Order Detail] Where ((([Order Detail].[ID]) = [Forms]![Order Data Entry Header]![ID]))")

    rst.MoveLast
    Forms![Order Data Entry Header].LineNum = rst![Ln]

End Sub

وأنا أفعل هذا حتى عند إضافة سجلات جديدة يمكن أن تكون مرقمة بالتسلسل بعد أكبر عدد. عند تشغيل الشكل الذي تحصل على "خطأ وقت التشغيل:" 3061 "عدد قليل جدا من المعلمات المتوقعة 1.". على خط RST تعيين.

وسيكون موضع تقدير أي مساعدة.

هل كانت مفيدة؟

المحلول

والمسألة هي حقيقة أن السلسلة التي تراها هناك هو بالضبط ما يحصل تمريرها إلى السائق.

وتحتاج إلى "بناء" السلسلة، كما يلي:

Set rst = CurrentDb.OpenRecordset("Select [ID], [Ln] From [Order Detail] Where ((([Order Detail].[ID]) = " & [Forms]![Order Data Entry Header]![ID] & "))")

ووتش للتأكد من أن [النماذج]! [بالدفع رأس إدخال البيانات]! [ID] هو محتوى آمن، منذ كنت بناء عبارة SQL.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top