تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
حفظ قيمة حقل من datagridview أو دتاباز في ملف نصي
#1
السلام عليكم ورحمة الله وبركاته
لدي حقل إسمه Montant يتكون من 13حرف
وقيمته تساوي  18.622,77
وعند حفظه في ملف نصي يجب ان تكون قيمته على هذا الشكل 0000001862277
كيف يمكنني الحصول على هذه النتيجة
الرد
تم الشكر بواسطة:
#2
ضع هذا الكود في الفورم
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)
الرد
تم الشكر بواسطة: elgokr
#3
بارك الله فيك أخي على الإجابة
الكود لا يعمل
تظهر رسالة في السطر
 If Char.IsNumber© Then b &= c
Overload resolution failed because no accessible 'IsNumber' accepts this number of argumentss this
الرد
تم الشكر بواسطة:
#4
تم تعديل الكود
كانت المشكلة بسبب ما في محرر المشاركات قام بتغيير ( c ) الى © واظطررت لوضع مسافات داخل القوس
الرد
تم الشكر بواسطة: ابو روضة
#5
شكرا لك أخي 5000 بارك الله فيك
كود شغال 
وجاري التجربة على الداتاقريدفيو 
والداتاباز
الرد
تم الشكر بواسطة: elgokr
#6
السلام عليكم ورحمة الله وبركاته
وجدت مشكل في هذه الدالة هو أنه
كود :
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
وبارك الله فيكم
الرد
تم الشكر بواسطة:
#7
هذا الكود يقوم باعطاء كود رقمي من 13 رقما

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

writer.Write( & C2 & "" & C3 & "" & GetFormatNumber(C4) & "" & C1)
الرد
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم