منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كود اضافة الفواصل العشرية
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم 
با اختصار اخواني 
اريد كود التعديل علي الأرقام مثلا اذا انا كتبت في التكست بوكس الرقم 3000 بدون فواصل اريد من الكود ان يجعل هذ الرقم علي الشكر التال 30.00
هل الامر صعب الي هذا الحد
السلام عليكم ورحمة الله وبركاته
اخي الكريم موضوع الفاصلة بين الارقام لتسهيل القاءة انتبه له جيدا حتى لاتتم القراءة بشكل خاطئ (لااحب وضعها بين الارقام)
يجب استخدام النقطة للفاصلة العشرية لانها ستعبر عن الكسور (اختر اعداداتها من الويندوز)
اما الفاصلة العادية فيمكن استخدامها لهذا الامر
كود :
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown
       If e.KeyCode = Keys.Enter Then
           TextBox1.Text = String.Format("{0:0,0}", Val(TextBox1.Text))
       End If
   End Sub
مشكور اخي علي الاهتمام لاكن الكود يضع الفاصلة بعد رقم ان اريدان يضع الفاصلة في الخر رقمين مثلا اكتب 3000 ويطلع 30.00

(04-08-21, 09:05 PM)ابراهيم ايبو كتب : [ -> ]السلام عليكم ورحمة الله وبركاته
اخي الكريم موضوع الفاصلة بين الارقام لتسهيل القاءة انتبه له جيدا حتى لاتتم القراءة بشكل خاطئ (لااحب وضعها بين الارقام)
يجب استخدام النقطة للفاصلة العشرية لانها ستعبر عن الكسور (اختر اعداداتها من الويندوز)
اما الفاصلة العادية فيمكن استخدامها لهذا الامر
كود :
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown
       If e.KeyCode = Keys.Enter Then
           TextBox1.Text = String.Format("{0:0,0}", Val(TextBox1.Text))
       End If
   End Sub

مشكور اخي علي الاهتمام لاكن الكود يضع الفاصلة بعد رقم ان اريدان يضع الفاصلة في الخر رقمين مثلا اكتب 3000 ويطلع 30.00
اخي لايجوز ولايمكن ذلك (حسب ما اعرف) 
عملية وضع الفاصلة لتسهيل القراءة هي كل 3 خانات هذا في دوال اللغة
سأحاول ايجاد كود لماتريد ان شاء الله

السلام عليكم
تفضل اخي هذا الكود ان كنت تريد فاصلة استبدل النقطة بالفاصلة وان كنت تريد النقطة فاتركها على حالها
كود :
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown

       If e.KeyCode = Keys.Enter Then
           Dim AA() As Char = TextBox1.Text.ToCharArray()
           TextBox1.Text = TextBox1.Text.Substring(0, TextBox1.TextLength - 2)
           TextBox1.Text = TextBox1.Text.TrimEnd(CChar("."))
           TextBox1.Text += "." & AA(AA.Length - 2) & AA(AA.Length - 1)

       End If
   End Sub
او هذا الكود المختصر وهو من احد الاعضاء يظهر في الاوقات الحاسمة يدلي بخبرته مشكورا ويبتعد عن الانظار جزاه الله كل الخير وامد في عمره وادام عليه وافر الصحة والعافية 
الصراحة لم يخطر في بالي ال(Insert) !!!!!
كود :
If e.KeyCode = Keys.Enter Then
           Dim AA As String = TextBox1.Text
           TextBox1.Text = AA.Insert(AA.Length - 2, ".")
       End If

لكن اخي الكريم اعيد واكرر هذا خطأ في العمليات الحسابية
(04-08-21, 10:08 PM)ابراهيم ايبو كتب : [ -> ]اخي لايجوز ولايمكن ذلك (حسب ما اعرف) 
عملية وضع الفاصلة لتسهيل القراءة هي كل 3 خانات هذا في دوال اللغة
سأحاول ايجاد كود لماتريد ان شاء الله

السلام عليكم
تفضل اخي هذا الكود ان كنت تريد فاصلة استبدل النقطة بالفاصلة وان كنت تريد النقطة فاتركها على حالها
كود :
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown

       If e.KeyCode = Keys.Enter Then
           Dim AA() As Char = TextBox1.Text.ToCharArray()
           TextBox1.Text = TextBox1.Text.Substring(0, TextBox1.TextLength - 2)
           TextBox1.Text = TextBox1.Text.TrimEnd(CChar("."))
           TextBox1.Text += "." & AA(AA.Length - 2) & AA(AA.Length - 1)

       End If
   End Sub
او هذا الكود المختصر وهو من احد الاعضاء يظهر في الاوقات الحاسمة يدلي بخبرته مشكورا ويبتعد عن الانظار جزاه الله كل الخير وامد في عمره وادام عليه وافر الصحة والعافية 
الصراحة لم يخطر في بالي ال(Insert) !!!!!
كود :
If e.KeyCode = Keys.Enter Then
           Dim AA As String = TextBox1.Text
           TextBox1.Text = AA.Insert(AA.Length - 2, ".")
       End If

لكن اخي الكريم اعيد واكرر هذا خطأ في العمليات الحسابية

السلام عليكم أخي الفاضل ابراهيم حلال المشاكل البرمجية بعد عجزنا عن حلها..
عندي مشروع برنامج يحفظ تلقائيا ما تكتبه في الداتاغريدفيو في قاعدة بيانات اكسس ..و هذا  البرنامج مصمم اصلا على انه يحفظ البيانات على شكل نص STRING و من المعروف ان الجداول النصية في الاكسس تستقبل جميع انواع البيانات بما فيها الارقام 
و عندما احفظ بيانات الارقام العشرية في هذا البرنامج تأتي بعدها فاصلة طويلة من الارقام ..كيف يمكنني أن اجعلها 5 ارقام فقط بعد الفاصلة ؟
دمت بخير
(04-08-21, 10:08 PM)ابراهيم ايبو كتب : [ -> ]اخي لايجوز ولايمكن ذلك (حسب ما اعرف) 
عملية وضع الفاصلة لتسهيل القراءة هي كل 3 خانات هذا في دوال اللغة
سأحاول ايجاد كود لماتريد ان شاء الله

السلام عليكم
تفضل اخي هذا الكود ان كنت تريد فاصلة استبدل النقطة بالفاصلة وان كنت تريد النقطة فاتركها على حالها
كود :
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown

       If e.KeyCode = Keys.Enter Then
           Dim AA() As Char = TextBox1.Text.ToCharArray()
           TextBox1.Text = TextBox1.Text.Substring(0, TextBox1.TextLength - 2)
           TextBox1.Text = TextBox1.Text.TrimEnd(CChar("."))
           TextBox1.Text += "." & AA(AA.Length - 2) & AA(AA.Length - 1)

       End If
   End Sub
او هذا الكود المختصر وهو من احد الاعضاء يظهر في الاوقات الحاسمة يدلي بخبرته مشكورا ويبتعد عن الانظار جزاه الله كل الخير وامد في عمره وادام عليه وافر الصحة والعافية 
الصراحة لم يخطر في بالي ال(Insert) !!!!!
كود :
If e.KeyCode = Keys.Enter Then
           Dim AA As String = TextBox1.Text
           TextBox1.Text = AA.Insert(AA.Length - 2, ".")
       End If

لكن اخي الكريم اعيد واكرر هذا خطأ في العمليات ابارك الله فيك اخي العزيز



(05-08-21, 08:46 PM)ahmedbezia كتب : [ -> ]
(04-08-21, 10:08 PM)ابراهيم ايبو كتب : [ -> ]اخي لايجوز ولايمكن ذلك (حسب ما اعرف) 
عملية وضع الفاصلة لتسهيل القراءة هي كل 3 خانات هذا في دوال اللغة
سأحاول ايجاد كود لماتريد ان شاء الله

السلام عليكم
تفضل اخي هذا الكود ان كنت تريد فاصلة استبدل النقطة بالفاصلة وان كنت تريد النقطة فاتركها على حالها
كود :
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown

       If e.KeyCode = Keys.Enter Then
           Dim AA() As Char = TextBox1.Text.ToCharArray()
           TextBox1.Text = TextBox1.Text.Substring(0, TextBox1.TextLength - 2)
           TextBox1.Text = TextBox1.Text.TrimEnd(CChar("."))
           TextBox1.Text += "." & AA(AA.Length - 2) & AA(AA.Length - 1)

       End If
   End Sub
او هذا الكود المختصر وهو من احد الاعضاء يظهر في الاوقات الحاسمة يدلي بخبرته مشكورا ويبتعد عن الانظار جزاه الله كل الخير وامد في عمره وادام عليه وافر الصحة والعافية 
الصراحة لم يخطر في بالي ال(Insert) !!!!!
كود :
If e.KeyCode = Keys.Enter Then
           Dim AA As String = TextBox1.Text
           TextBox1.Text = AA.Insert(AA.Length - 2, ".")
       End If

لكن اخي الكريم اعيد واكرر هذا خطأ في العمليات ابارك الله فيك اخي العزوما الحل با النسبة للعمليات
وما الحل اخي با النسبة للعمليات
السلام عليكم ورحمة الله وبركاته
احي الكريم لاحل مع وجود نقطة او فاصلة فكلاهما يستعمل للفاصلة العشرية حسب مانختاره من اعدادات الويندوز
بالله عليك عندما تكتب 3000 وتصبح 30.00 ثم ادرت جمعها مع الرقم 30  هل تعلم ان النتيجة ستكون 60 بينما يجب ان تكون في الحقيقة 3030 وقس على ذلك  العمليات الحسابية وبخاصة التي فيها كسور 
لك ان تتخيل حجم الخطأ في حسابات شركة ما
لذلك قلت لك من البداية هذا امر خاطئ