سوال شما| انتقال از رکورد دیتاشیت به فرم دیگر اکسس
بسم الله الرحمن الرحیم
سلام
آقای ابوالفضل حسینزاده در بخش تماس با ما، سوالی رو مطرح کردن که در زیر مشاهده میکنید؛ هرچند که درست بود سوال رو در بخش سوالات شما مطرح میکردند.
سلام
روزتون بخیر
یه سوال در مورد اکسس ثبت اطلاعات شهدا هست که بارگذاری کردین.
توی فرم لیست اصلی، وقتی روی یک فیلد دبل کلیک میشه، فرم ورود و اصلاح مشخصات مربوط به همون فیلد باز میشه.سوالم اینه که چطوری باید این کار رو انجام داد؟
اگه ممکنه راهنماییم کنید
خب قطعه کدی که در برنامه مذکور این کار رو انجام میده در ادامه براتون ذکر شده؛
Private Sub Form_DblClick(Cancel As Integer) With Me If .Recordset.RecordCount > 0 Then DoCmd.OpenForm "frm_shohada", acNormal, , "[ShID]=" & Me.ShID, acFormPropertySettings, acWindowNormal End If End With End Sub
اول نگاهی به کد بندازیم:
آموزش تابع With
فکر میکنم به مناسبت توضیح مختصری در مورد تابع With
که یکی از توابعی پرمصرف برای حرفهایها هست بدم تا بیشتر با تابع With
آشنا بشید.
تابع With
به نوعی یک میانبر ساده است تا از تکرار اسم متغییرها و کنترلرها جلوگیری کند.
ساختار تابع With
به این صورت است که ابتدا With
را نوشته و سپس کنترلر مورد نظر را قرار میدهیم.
WithtxtLName
سپس خصوصیتهایی که قرار است برای کنترل مورد نظر اعمال شود را مانند زیر اضافه میکنیم:
کافیست تا یک نقطه (.) قرار دهیم و خصوصیت مورد نظر را صدا بزنیم.
.BorderColor = vbBlack .BackColor = vbYellow .Enabled = True .FontName = "vazir" .ForeColor = vbRed .OnGotFocus
و در انتها هم مجموعه کد رو با End With
به پایان میبریم.
که در نهایت یک نمونه کد کامل همانند زیر است:
With txtLName .BorderColor = vbBlack .BackColor = vbYellow .Enabled = True .FontName = "vazir" .ForeColor = vbRed .OnGotFocus End With
بریم سراغ بحث اصلی
- ابتدا توسط یک شرط تعداد رکوردهای موجود رو بررسی میکنیم و اگر بزرگتر از صفر باشد، شرط زیر اجرا خواهد شد.
در مرحله بعد دستور باز کردن یک فرم را توسط OpenForm
داریم به این صورت که:
- فرم frm_shohada را به صورت نرمال باز کرده و فقط در بخش شرط یا
WhereCondition
این قانون اضافه شده کهShID
آن برابر با فیلدShID
در فرم جاری باشد.
به طور دقیقتر، عملکرد مذکور مرتبط با شرط یا Where
است که صرفا اطلاعات مرتبط با اطلاعات جاری را نمایش میدهد.
امیدوارم که سوال یا نقطه ابهامی باقی نمانده باشد.
اگر سوالی بود در بخش نظرات مطرح کنید.
استاد ازتون ممنونم تنظیمات رسورس فیلد مورد نظر پاک شده بود درستش کردم کارم را افتاد بازم ممنونم از سایت عالیتون واقعا مشگل مردم رو حل میکنید انشاالله خدا هم هر چی مشگل داری رو حل کنه خیلی مرسی♥♥