انتقال اطلاعات TextBox ها و ListBoxها بین فرم های ساخته شده در Access
پنجشنبه, ۱۵ فروردين ۱۳۹۸، ۰۲:۵۶ ب.ظ
این مطلب را با یک مثال شروع می کنم:
ما از لیست اجناس یک جنس را انتخاب می کنیم و با زدن دکمه ، ضمن بسته شدن لیست، باید نام جنس و قیمت در فاکتور بیافتد.
برای این منظور ابتدا دو فرم ساخته و کنترل های زیر را در آنها قرار دهید:
frm_TransferData1:
TextBox: txtName
TextBox: txtPrice
ListBox: lstKala
button: btnTransfer
frm_TransferData2:
TextBox: txtName1
TextBox: txtPrice1
button: btnTransfer1
در ListBox فرم اول، باید در 2 ستون تعدادی قیمت و نام کالا وارد نماید. در اینجا ستون اول قیمت است و ستون دوم نام کالا
حالا کدهای زیر را در روالهای فرمها وارد نمائید:
Form1---------------------------------------------------------------
Private Sub btnTransfer_Click()
DoCmd.OpenForm "frm_TransferData2"
Forms![frm_TransferData2]![txtName1] = Me.txtName
Forms![frm_TransferData2]![txtPrice1] = Me.txtPrice
DoCmd.Close acForm, "frm_TransferData1"
End Sub
Private Sub lstKala_Click()
Dim i As Integer
i = Me.lstKala.ListIndex
Me.txtPrice = Me.lstKala.Column(0, i)
Me.txtName = Me.lstKala.Column(1, i)
End Sub
Form2----------------------------------------------------------------
Private Sub btnTransfer1_Click()
DoCmd.OpenForm "frm_TransferData1"
End Sub
حالا فرم 1 را اجرا کنید و با انتخاب کالا از لیست باکس و زدن دکمه انتقال، نام کالا و قیمت به فرم دوم که اصطلاحأ فاکتور است وارد می شود و فرم نیز بسته می شود. در این مطلب، 2 هدف پیگیری شده، یکی خواندن و استفاده از هر دو ستون لیست باکس و دیگیری انتقال اطلاعات بین 2 فرم.
قرم دوم نیز می تواند همانند فرم اول دارای لیست باکس باشد و اطلاعات بجای انتقال به TextBox ها به ListBox منتقل شود.
این موارد صرفأ تکنیک هایی است که می توان در برنامه سازی Access از آنها استفاده نمود
امیدوارم این تکنیک ساده مفید واقع شده باشد