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

نسخة كاملة : حفظ قيمة حقل من datagridview أو دتاباز في ملف نصي
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاته
لدي حقل إسمه Montant يتكون من 13حرف
وقيمته تساوي  18.622,77
وعند حفظه في ملف نصي يجب ان تكون قيمته على هذا الشكل 0000001862277
كيف يمكنني الحصول على هذه النتيجة
ضع هذا الكود في الفورم
Private Function GetFormatNumber(a As String) As String
    Dim b = ""
    For Each c As Char In a.ToCharArray
        If Char.IsNumber( c ) Then b &= c
    Next
    Return CULng(b).ToString("D13")
End Function

ثم قم بالاستفاده منه بالشكل التالي
Dim t = "18.622,77"
Dim y = GetFormatNumber(t)
MsgBox(y)
بارك الله فيك أخي على الإجابة
الكود لا يعمل
تظهر رسالة في السطر
 If Char.IsNumber© Then b &= c
Overload resolution failed because no accessible 'IsNumber' accepts this number of argumentss this
تم تعديل الكود
كانت المشكلة بسبب ما في محرر المشاركات قام بتغيير ( c ) الى © واظطررت لوضع مسافات داخل القوس
شكرا لك أخي 5000 بارك الله فيك
كود شغال 
وجاري التجربة على الداتاقريدفيو 
والداتاباز
السلام عليكم ورحمة الله وبركاته
وجدت مشكل في هذه الدالة هو أنه
كود :
Private Function GetFormatNumber(ByVal a As String) As String
       Dim b = ""
       For Each c As Char In a.ToCharArray
           If Char.IsNumber(c) Then b &= c
       Next
       Return CULng(b).ToString("D13")
   End Function

المشكل أن عندما يكون لديك رقم مثل 18622,70
تقوم هذه الدالة بجعله 0000000186227
أي أن 70 التي بعد الفاصلة جعلتها 7 فقط
وعند إعادة جلب هذا الملف يصبح الرقم هكذا  1862,27 مما يعقد الأمر أكثر
وعندما مثلا يكون مثلا الرقم بعد الفاصلة 77 أو 22 أو غير ذلك فهي تعمل بشكل عادي وجيد
المشكلة فقط في 10 و 20 و 30 و 40 و 50 و 60 و 70 و 80 و 90
وبارك الله فيكم
هذا الكود يقوم باعطاء كود رقمي من 13 رقما

Dim Montant As Double = 18622.7
Dim a = Montant.ToString("00000000000.00").Replace(".","")
بارك الله فيك أخي بدري على الرد
كيف يمكن تطبيق ذلك على خلية معينة  من داتا قريد الخلية C4

writer.Write( & C2 & "" & C3 & "" & GetFormatNumber(C4) & "" & C1)