منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] تنسيق الرقم مثلا 100,000,000 - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [VB.NET] تنسيق الرقم مثلا 100,000,000 (/showthread.php?tid=30012)



تنسيق الرقم مثلا 100,000,000 - khairallah - 23-06-19

ارجو من الاخوة الكرام كود لتنسيق الارقام انا استعمل هذا الكود لكنه يجب اسناد القيمة الجديدة n1 هل هناك طريقة اسهل 
PHP كود :
DIM n1 as new textbox
 
Private Sub kima_idkhal_TextChanged(sender As ObjectAs EventArgsHandles kima_idkhal.TextChanged
        n1
.Text Format(Val(kima_idkhal.Text), "#,##0")
 
   End Sub 
PHP كود :
Private Sub kima_idkhal_LostFocus(sender As ObjectAs EventArgsHandles kima_idkhal.LostFocus
        kima_idkhal
.Text n1.Text
    End Sub 



RE: تنسيق الرقم مثلا 100,000,000 - sniperjawadino - 24-06-19

لم أفهم جيدا لماذا لا تضعها مباشرة هكذا
كود :
   Private Sub kima_idkhal_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles kima_idkhal.LostFocus
       kima_idkhal.Text = Format(Val(kima_idkhal.Text), "#.##0")
   End Sub



RE: تنسيق الرقم مثلا 100,000,000 - khairallah - 25-06-19

(24-06-19, 05:15 PM)sniperjawadino كتب : لم أفهم جيدا لماذا لا تضعها مباشرة هكذا
كود :
   Private Sub kima_idkhal_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles kima_idkhal.LostFocus
       kima_idkhal.Text = Format(Val(kima_idkhal.Text), "#.##0")
   End Sub

شكرا على ردك اخي الكريم لكن انا وضعت الكود كما تفضلت فكانت النتيجة خاطئة 100000000.000


RE: تنسيق الرقم مثلا 100,000,000 - سامي محمد - 25-06-19

استخدم هذه الطريقة

كود :
    Private Sub kima_idkhal_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles kima_idkhal.LostFocus
        kima_idkhal.Text = String.Format("{0:#,##}", CInt(kima_idkhal.Text))
    End Sub
وهي مشبة للطريقة السابقة ولكن بتحويل النص الموجود في التكست الى رقم

أو بكود الأخ : sniperjawadino


كود :
 kima_idkhal.Text = Format(Val(kima_idkhal.Text), "#,##")
اعتقد سهوا استبدل الــ ، بــ .


RE: تنسيق الرقم مثلا 100,000,000 - ابراهيم ايبو - 25-06-19

السلام عليكم اخي الكريم
تفضل هذا الكود لتنسيق الرقم
من 100000000 الى 100,000,000
كود :
MsgBox(String.Format("{0:0,0}", Val(TextBox1.Text)))



RE: تنسيق الرقم مثلا 100,000,000 - khairallah - 25-06-19

(25-06-19, 02:29 PM)سامي محمد كتب : استخدم هذه الطريقة

كود :
    Private Sub kima_idkhal_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles kima_idkhal.LostFocus
        kima_idkhal.Text = String.Format("{0:#,##}", CInt(kima_idkhal.Text))
    End Sub
وهي مشبة للطريقة السابقة ولكن بتحويل النص الموجود في التكست الى رقم

أو بكود الأخ : sniperjawadino


كود :
 kima_idkhal.Text = Format(Val(kima_idkhal.Text), "#,##")
اعتقد سهوا استبدل الــ ، بــ .

الف شكر الكود المطلوب هو 
PHP كود :
kima_idkhal.Text String.Format("{0:#,##}"CInt(kima_idkhal.Text)) 



RE: تنسيق الرقم مثلا 100,000,000 - khairallah - 27-06-19

(25-06-19, 03:17 PM)khairallah كتب :
(25-06-19, 02:29 PM)سامي محمد كتب : استخدم هذه الطريقة

كود :
    Private Sub kima_idkhal_LostFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles kima_idkhal.LostFocus
        kima_idkhal.Text = String.Format("{0:#,##}", CInt(kima_idkhal.Text))
    End Sub
وهي مشبة للطريقة السابقة ولكن بتحويل النص الموجود في التكست الى رقم

أو بكود الأخ : sniperjawadino


كود :
 kima_idkhal.Text = Format(Val(kima_idkhal.Text), "#,##")
اعتقد سهوا استبدل الــ ، بــ .

الف شكر الكود المطلوب هو 
PHP كود :
kima_idkhal.Text String.Format("{0:#,##}"CInt(kima_idkhal.Text)) 

اخي العزيز بعد تجربة هذا الكود ظهر عند خطا  وهو عندما تكون القيمة صفر يحولها الى لا شيئ


RE: تنسيق الرقم مثلا 100,000,000 - سامي محمد - 28-06-19

هذا طبيعي يا أخ .. لأن الدالة التي تقوم بعمل الفواصل بين الارقام هي متخصصة بالقيم ومن المعلوم انه لا يوجد شيء قيمته 000000 وحتى ان الدالة لا تعمل اذا كان النص الممرر إليه من نوع String وتلاحظ في الكود قمنا تحويل النص من String إلى Integer عن طريق الدالة Cint أو Val 

----
ولكن ان كنت تريد تجزئة اي نص مدخل في التكست بكس سوء كان ارقام او اصفار او حروف فستخدم هذه الطريقة

قم بستدعاء مجال الاسماء هذا


كود :
Imports System.Text.RegularExpressions

وضع هذا الكود بدلا من السابق

كود :
 kima_idkhal.Text = Regex.Replace(kima_idkhal.Text, ",", "")
        kima_idkhal.Text = StrReverse(kima_idkhal.Text)
        kima_idkhal.Text = Regex.Replace(kima_idkhal.Text, "(.{3})", "$1,")
        kima_idkhal.Text = StrReverse(kima_idkhal.Text)
        kima_idkhal.Text = Regex.Replace(kima_idkhal.Text, "^,", "")

قد تكون هناك طرق اخرى ولكن هذا الذي طرأ علي الآن