اذهب الي المحتوي
أوفيسنا

استخراج قيمة من حقل نصى_ فصل الارقام عن الحروف


mom20088

الردود الموصى بها

السلام عليكم

أريد معرفة دالة لاستخراج قيمة من حقل نصى فى القاعدة المرفقةواسمه weight

مرفق قاعدة البيانات 

New Microsoft Access Database.rar

تم تعديل بواسطه ابوخليل
تعديل العنوان
رابط هذا التعليق
شارك

13 ساعات مضت, mom20088 said:

السلام عليكم

أريد معرفة دالة لاستخراج قيمة من حقل نصى فى القاعدة المرفقةواسمه weight

مرفق قاعدة البيانات 

New Microsoft Access Database.rar

وعليكم السلام ورحمة الله وبركاته

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

 

رابط هذا التعليق
شارك

إذا كانت النصوص الممكنة مع الأرقام هي فقط رموز 

gr

kg

ml

l

يمكنك استعمال هذا التعبير في الاستعلام

weight number: Replace(Replace(Replace(Replace([weight];"gr";"");"kg";"");"ml";"");"l";"")

وهو لاستبدال النصوص بلا شيء لتظهر الأرقام فقط

 

  • Like 1
رابط هذا التعليق
شارك

وعليكم السلام ورحمة الله

يمكنك أيضا استخدام الوظيفة التالية في استعلام

Function GetNumbers(SText)
    For i = 1 To Len(SText)
        If Not (IsNumeric(Left(SText, i))) Then
            GetNumbers = Left(SText, i - 1)
            Exit Function
        End If
    Next
End Function

 New Microsoft Access Database.zip

  • Like 2
رابط هذا التعليق
شارك

الان, أبو إبراهيم الغامدي said:

وعليكم السلام ورحمة الله

يمكنك أيضا استخدام الوظيفة التالية في استعلام


Function GetNumbers(SText)
    For i = 1 To Len(SText)
        If Not (IsNumeric(Left(SText, i))) Then
            GetNumbers = Left(SText, i - 1)
            Exit Function
        End If
    Next
End Function

 New Microsoft Access Database.zip

استاذنا ابوابراهيم الغامدي

هل هناك وظيفة ان يستخرج الارقام كلها من بين نصوص

مثلا

34HRV5T765HH545 بيكون

345765545

  • Like 2
رابط هذا التعليق
شارك

نعم أستاذ شيفان.. إليك الوظيفة التالية

Function GetNumbersOnly(SText)
    Dim Numbers
    For i = 1 To Len(SText)
        If IsNumeric(Mid(SText, i, 1)) Then
            Numbers = Numbers & Mid(SText, i, 1)
        End If
    Next
    GetNumbersOnly = Trim(Numbers)
End Function

New Microsoft Access Database.zip

  • Like 6
رابط هذا التعليق
شارك

بارك الله لك أستاذ إبراهيم

ولإثراء الموضوع وتطوير الدالة وجعلها أكثر احترافية

Function GetNumbersOnly(SText as string) as double
    Dim Numbers as string
    For i = 1 To Len(SText)
        If IsNumeric(Mid(SText, i, 1)) or mid(sText,i,1) =  "." Then
            Numbers = Numbers & Mid(SText, i, 1)
        End If
    Next
    GetNumbersOnly = cdbl(Trim(Numbers))
End Function

تم إضافة تعريف بعض المتغيرات وشرط للعلامة العشرية وتحويل ناتج الدالة لرقم من نوع دبل

كل عام وانتم جميعا بخير وسعادة ورضا

  • Like 1
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information