امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل در جمع مقادیر maskedbox
نویسنده پیام
nasirzadeh_acc آفلاین
تازه وارد

ارسال‌ها: 1
موضوع‌ها: 0
تاریخ عضویت: تير ۱۳۹۴

تشکرها : 0
( 0 تشکر در 0 ارسال )
ارسال: #1
مشکل در جمع مقادیر maskedbox
سلام دوستان لطفاً مشکل من حل کنید
توی یه فرم سه تا maskedbox دارم که می خوام تو دو تایی اولی عدد بنویسم و تو سومی اتوماتیک وار جمع بشه خودم این فرمول نوشتم جواب نمی ده .
Private Sub MaskEdBox5_Change
Dim i As Integer
( i = Val(MaskEdBox2.Text) + Val(MaskEdBox3.Text) + Val(MaskEdBox4.Text
End Sub
۰۲-تير-۱۳۹۴, ۲۰:۴۱:۰۱
ارسال‌ها
پاسخ
Payman62 آفلاین
مدیر بخش ویژوال بیسیک
*****

ارسال‌ها: 2,273
موضوع‌ها: 149
تاریخ عضویت: اسفند ۱۳۸۴

تشکرها : 1308
( 3661 تشکر در 942 ارسال )
ارسال: #2
RE: مشکل در جمع مقادیر maskedbox
سلام.

کد:
Private Sub MaskEdBox1_Change()
    MaskEdBox3.Text = Calc
End Sub

Private Sub MaskEdBox2_Change()
    MaskEdBox3.Text = Calc
End Sub

Private Function Calc() As Integer
    Calc = Val(MaskEdBox1.Text) + Val(MaskEdBox2.Text)
End Function
۱۱-تير-۱۳۹۴, ۰۰:۴۵:۵۲
ارسال‌ها
پاسخ
تشکر شده توسط : Di Di, hamed_Arfaee
hamed_Arfaee آفلاین
مدیر بخش
*****

ارسال‌ها: 1,334
موضوع‌ها: 231
تاریخ عضویت: تير ۱۳۸۳

تشکرها : 1250
( 2634 تشکر در 730 ارسال )
ارسال: #3
RE: مشکل در جمع مقادیر maskedbox
با سلام
خاصیت ماسک ادیت باکس در کنترل الگوی ورودی هست .
مثلا تاریخ - ساعت - کد پستی و ...
برای تعریف الگوی تاریخ از عبارتی مثل زیر استفاده میکنیم :
####/##/##
که هر علامت شارپ (#) به معنی یک عدد صحیح هست و هر ممیز (/) بصورت ثابت در الگو تعریف شده است .

وقتی کاربر مقداری در ماسک ادیت باکس وارد می کنه اون مقدار همراه با مقادیر ثابت تعریف شده در الگو ثبت میشه .

صورت مسئله :

مشکل وقتی پیش میاد که شما از ماسک ادیت باکس برای جدا کردن 3رقم 3رقم اعداد بزرگ اتفاده می کنین :
###،###،###
که عددی مثل 123456789 رو بصورت 123،456،789 نشون بده و هنگام خواندن مقدار بصورت رشته کاراکتری (نه عددی) بهتون برگردونده میشه و اگه از تابع Val استفاده بکنین مقدار بازگشتی قسمت صحیح رشته خواهد بود یعنی فقط مقدار 123 بهتون برگردونده میشه .

راه حل :
قبل از خواندن مقدار ماسک ادیت باکس باید تمام کاراکتر های ثابت تعریف شده در الگو حذف شود .
کد:
calc =val( replace (maskedbox1.text,",",""))

پی نوشت :
اگر مشکل شما اونی نبود که توضیح دادم، دقت کنین که سرریز داده در متغییر نوع عدد صحیح بوجود نیومده باشه .
حد اکثر مقدار قابل ثبت در متغییر از نوع عدد صحیح هست : 32767
برای اعداد بزرگتر از نوع LONG استفاده کنین که در محدوده زیر هست :
-2,147,483,648 تا 2,147,483,647

برای اطلاعات بیشتر در مورد متغییرها به آدرس زیر سر بزنید :
کد:
https://msdn.microsoft.com/en-us/library/aa263420(v=vs.60).aspx

حامد ارفعی

موفقيت، پيش رفتن است، نه به نقطه ي پايان رسيدن.(آنتوني رابينز)


تریگرها در SQL server

آیا میدانید SQL ای
۱۱-تير-۱۳۹۴, ۱۹:۰۷:۲۸
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : Di Di


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  [سوال] لیست غیرتکراری مقادیر یک رنج eppagh 1 2,638 ۲۶-شهریور-۱۳۹۴, ۰۹:۱۷:۲۹
آخرین ارسال: moderator
  مشکل با مقادیر رشته ای در dll mfasihi 1 3,208 ۰۹-آذر-۱۳۸۸, ۱۲:۲۴:۳۹
آخرین ارسال: dreamvbfox
  مشکل با مقادیر رشته ای mfasihi 0 1,773 ۲۴-آبان-۱۳۸۸, ۱۳:۳۱:۵۱
آخرین ارسال: mfasihi
  مجموع مقادیر یک ستون mm_ley 5 7,499 ۱۹-فروردین-۱۳۸۸, ۱۵:۵۰:۳۵
آخرین ارسال: Di Di
  انتقال مقادیر فیلد های اکسس به MS-word park 0 2,586 ۱۱-دى-۱۳۸۷, ۲۱:۲۸:۳۳
آخرین ارسال: park
  به کاربردن مقادیر Textbox یا Combo در SQL وی بی 6 park 1 2,797 ۰۶-دى-۱۳۸۷, ۱۶:۱۱:۱۰
آخرین ارسال: mbza11
  جمع زدن مقادیر موجود در لیست... Vig 1 2,622 ۱۹-فروردین-۱۳۸۷, ۲۱:۱۲:۰۹
آخرین ارسال: CRazYFULL
  مشکل maskedbox با بانک siana_k1980 12 8,657 ۱۵-فروردین-۱۳۸۷, ۱۲:۵۱:۱۳
آخرین ارسال: ajlajlajl

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS