-
مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
با سلام ..........
من تو برنامم میخوام جمع 15تا تکست (تکست ها حاوی اعداد به صورت 1,000 هستن یا 5,000,000)
بذارم تو یه تکست دیگه ولی چون فرمت تکست باکس ها به صورت بالاست جمع درست در نمیاد در واقع هر چی قبل از علامت , هست جمع میشه و بقیه جمع نمیشه
چطور میتونم اینا رو جمع کنم نمیخوام فرمت رو عوض کنم چون فاکتور فروش هست و تکست ها قیمت ها و این فرمت ضروریه
-
نقل قول: مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
سلام
اینجوری:
(3 تا تکست باکس، یه دونه کامند بوتون)
Private Function RemoveChar(ByVal str As String) As String
Dim i As Variant, c As String
For i = 1 To Len(str)
c = Mid(str, i, 1)
If Asc(c) >= vbKey0 And Asc(c) <= vbKey9 Then
RemoveChar = RemoveChar & c
End If
Next
End Function
Private Sub Command1_Click()
On Error Resume Next
Dim jam As Variant
jam = Val(RemoveChar(Text1)) + Val(RemoveChar(Text2))
Text3 = Format(jam, "###,###,###,###,###,###,###,###")
End Sub
-
نقل قول: مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
سلام علیکم
یا کاما را از رشته حذف کنیم، برای مثال:
Private Sub Command1_Click()
Caption = CVal(Text1) + CVal(Text2) + CVal(Text3)
End Sub
Public Function CVal(sString$)
CVal = Val(Replace(sString$, ",", ""))
End Function
چرا که اگه پیش از حذف کاما از Val استفاده کنیم تنها عدد سمت چپ برگشت داده میشود
موفق باشید
-
نقل قول: مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
ممنون از تمام دوستان مشکل با راهنمایی آقا محسن حل شد
-
نقل قول: مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
من یه مشکل خیلی عجیب دارم وقتی میخوام دوتا متغییر رو جمع کنم مثلا x1+x2 اگه مقدار هر کدومشون 2 باشه به جای اینکه بنویسه 4 -------> مینویسه 22 یعنی میزارتشون کنار هم بقیه عملگرها درسته ها فقط جمع که من باهاش کار دارم مشکل داره ؟! چیکارش کنم ؟!
-
نقل قول: مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
نقل قول:
نوشته شده توسط
shinyboy
من یه مشکل خیلی عجیب دارم وقتی میخوام دوتا متغییر رو جمع کنم مثلا x1+x2 اگه مقدار هر کدومشون 2 باشه به جای اینکه بنویسه 4 -------> مینویسه 22 یعنی میزارتشون کنار هم بقیه عملگرها درسته ها فقط جمع که من باهاش کار دارم مشکل داره ؟! چیکارش کنم ؟!
سلام علیکم
به احتمال خیلی قوی x1 و x2 از نوع String هستند، کد را به ضورت زیر بنویسید:
Val(x1)+Val(x2)
موفق باشید
-
نقل قول: مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
مرسی از جواب سریع تون ولی تو تعریف متغیر ها جفتشون رو از نوع Integer معرفی کردم. اگه اینجوریه عملگرهای دیگه چرا درست کار میکنه؟!!!
-
نقل قول: مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
سلام دوستان
من برعکس این مشکل رو دارم
یعنی یه تکست باکس دارم می خوام وقتی توش عدد تایپ می کنی سه رقم سه رقم با کامل جدا کنه
برای مبلغ می خوام
لطفا کمک کنید
-
نقل قول: مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
نقل قول:
نوشته شده توسط
shinyboy
مرسی از جواب سریع تون ولی تو تعریف متغیر ها جفتشون رو از نوع Integer معرفی کردم. اگه اینجوریه عملگرهای دیگه چرا درست کار میکنه؟!!!
الحاق مقادیر فقط در رشته ها صورت میگیره و در غیر آن براساس عملگر مابینشون جمع، تفریق و ... میشه، یکی از متغیرها را (مثلا x1) انتخاب و Shift+F2 را فشار بدین تا cursor به خط اعلان متغیر پرش کنه و نوعش مشخص بشه
نقل قول:
نوشته شده توسط aliphp1
سلام دوستان
من برعکس این مشکل رو دارم
یعنی یه تکست باکس دارم می خوام وقتی توش عدد تایپ می کنی سه رقم سه رقم با کامل جدا کنه
برای مبلغ می خوام
لطفا کمک کنید
سلام علیکم
بهتر بود سوال را در تاپیک جداگانه ای مطرح می کردید، کد نمونه زیر را بررسی کنید:
Private Sub Command1_Click()
MsgBox "1000000000 -> " & Format("1000000000", "#,###")
End Sub
موفق باشید
-
نقل قول: مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
بازم ممنون با val(x1) l مشکل حل شد. ولی من اون کاری رو که شما گفتید کردم. تو خط اعلان متغیر نوعش integer بود. هنوزم نفهمیدم چرا اونو به عنوان رشته میشناخت !!!!
برای مشکل دوستمون یه روش دیگه هم هست . تو propeties هر تکست باکس یه گزینه برای تعییین نوع متغیر داخل اون هست . اگر اونو رو number بزاری یه تیک داره که نوشته عددهارو 3 تا 3 تا جدا کنه !
-
نقل قول: مشکل با جمع کردن اعدادی که به صورت 1,000 یا 5,000,000 هستن
نقل قول:
نوشته شده توسط
shinyboy
برای مشکل دوستمون یه روش دیگه هم هست . تو propeties هر تکست باکس یه گزینه برای تعییین نوع متغیر داخل اون هست . اگر اونو رو number بزاری یه تیک داره که نوشته عددهارو 3 تا 3 تا جدا کنه !
سلام علیکم
خاصیت DataFormat برای زمانی است که کاربر textbox را به یک data-source متصل کرده باشد
موفق باشید