توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : [حل شده] جلوگیری از ثبت اطلاعات تکراری در فرم (در یک سطر)
سلام
یه فرم درست کردم که توش چند تا TextBox به نام های زیر هست
نام
نام خانوادگی
نام پدر
و...
من میخوام وقتی همه Textbox ها تکراری بود به کاربر خطا بده و نتونه اطلاعات تکراری رو ثبت کنه
این کد برای چک کردن یه دونه Textbox هست
حالا من میخوام چند تا textbox دیگه اضافه کنم نمیتونم.
If Cells(ver, "A") = TextBox1 Then
MsgBox "This name is already registered !", vbInformation
TextBox1 = Empty
Exit Sub: End If: Next
iranweld
2016/01/31, 11:12
با سلام
Private Sub CommandButton1_Click()
If TextBox1 = TextBox2 And TextBox2 = TextBox3 Then
MsgBox "not ok"
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
Exit Sub
End If
T = 1
Z1 = Sheet1.Cells(Sheet1.Rows.Count, "A").End(xlUp).Row
For j = 1 To Z1
If TextBox1 = Range("A" & j) And TextBox2 = Range("B" & j) And TextBox3 = Range("C" & j) Then
MsgBox "not ok"
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
T = 2
Exit Sub
End If
Next
If T = 1 Then
Range("A" & Z1 + 1) = TextBox1
Range("B" & Z1 + 1) = TextBox2
Range("C" & Z1 + 1) = TextBox3
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
End If
End Sub
ممنون
کد شما توی فرم من کار نکرد
میشه یه نگاه بندازید به فایلم ببینی کجای کار رو اشتباه انجام میدم
iranweld
2016/01/31, 18:37
فایل پیوست شد
ممنون.
کد بدرستی کار میکنه
فقط در یک صورت باز هم تکراری ثبت میکنه
فایل رو باز کنید
از توی یوزر فرم Listbox عطا ذلیران رو انتخاب کن و ذخیره رو بزنید
majid_mx4
2016/02/01, 18:31
با سلام و تشکر از دوست و استاد محترم جناب آقای Iranweld
دوست عزیز atadaliran
این فقط یک پشنهاد و توصیه است (فقط و فقط )
بطور کلی باید در نظر داشتیه باشید استفاده از اسامی مخصوصا اسامی فارسی برای کنترل ثبت کاملا اشتباه است .
اگر بخواهید به همین روند مصر باشید مطمئنن به مشکل خواهید خورد.
بهتر است برای هریک از اسامی کد در نظر گرفته شود حال کد ملی یا کد پرسنلی که بر اساس آن به راحتی میتوانید گزارش ، ثبت ، ویا .... انجام دهید .
موفق باشید میر
ممنون از توصیه و راهنمایتون
قطعا اگه همچین چیزی که شما فرمودین امکان داشت انجام میدادم
این یه فرم ثبت اقساط پرداختی هست که نمیشه درش از کد ملی یا چیزی مثل UnicID استفاده کرد چون هر فرد ماهانه میاد قسطشو پرداخت میکنه و من فقط هدفم این بود که در یک ماه 2 بار اینکارو انجام نشه ( اون هم به اشتباه کاربر)
حالا اگه هر ایده یا ترفندی برای این کار به ذهنتون میرسه واقعا ممنون میشم راهنمایی کنید
majid_mx4
2016/02/01, 23:44
با سلام
اول باید بگویم یکی دیگر از اشتباهات استفاده از تکست باکس می باشد که بهتر است از کمبوباکس با یک لیست یونیک از اسامی ( برای کنترل بهتر اسامی وارد شده بدون خطا ) که درشیت DataName وارد شده استفاده نمایید.( پیشنهاد است برای کنترل بهتر ، چون فرمودید که نمی توانید از کد و یا ... استفاده نمایید)
یک کنترل ساده روی اسامی و تاریخ برای جلوگیری از ثبت دوباره اضافه شده است .
قسمت تغییرداد شده را مشخص کردم
لطفا فایل ضمیمه را چک کنید شاید مطابق میل شما نباشد ولی منظور کلی در نحوه کنترل ورود اطلاعات است .
موفق باشید میر
ممنون جناب میر.
من در حال کامل کردن فرم و رفع نواقص و مشکلات احتمالی که از سمت کاربر میتونه ایجاد کنه هستم
از راهنمایی ها شما و بقیه اساتید حتما اسنقبال میکنم
بابت کمک و وقتی که گذاشتید باز هم تشکر میکنم حتما این کار رو پیدا میکنم توی فایلم
vBulletin® v4.2.5, Copyright ©2000-2024, Jelsoft Enterprises Ltd.