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

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

قام بنشر

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

اساتذتى الكرام من فضلكم انا احتاج الى فصل محتوى مربع النص لاستخلص منه جرء معين 
مثلا

2606671-x
اريد استخلاص كل الحقول بدون  -x
فتكون النتيجة كالاتى     2606671

استخدمت كود كان قد تفضل به على من قبل بعد رب العزة سبحانه وتعالى استاذى الجليل ومعلمى القدير الاستاذ @ابو خليل

ولكن واجهنى مشكله لو لم يحتوى النص داخل الحقل على الجزء الذى اريد فصله يظهر خطأ على شكل    #Func!

هل هناك طريقة لكى يظهر النص كاملا كما هو طالما انه لا يحتوى على الجزء الذى اريد فصله بدلا من الخطأ الذى ظهر اليكم المرفق 
وهذه الصورة توضح المطلوب اكثر 
صورة الخطأ
001.jpg.1b3f16d367152f38f946d830a046e5b1.jpg

 

الصورة المطلوب تحقيقها ان امكن ذلك 
002.jpg.322782f63dfab713366678b7655e8bda.jpg

qs.rar

قام بنشر

قاعدتك كان بها اثنان حروف فقط
هما C , X 
مع علامة "-"

لذا خذ هذا لعمل السريع
 

Expr2: Replace(Replace(Replace([pn_EGM];"-";"");"x";"");"C";"")

 

  • Like 1
قام بنشر (معدل)

لا لا لا 


انا عاوزفصل 
لما يكون الرقم كده                                                2606671-x         يكون                    2606671
ولوكا الرقم لا يحتوى على   -x        مثل     088256-04644         يكون          088256-04644

كما هو موضح هنا فى هذه الصورة 

002.jpg.322782f63dfab713366678b7655e8bda.jpg

 

تم تعديل بواسطه ابا جودى
قام بنشر
الان, ابا جودى said:

نعم نعم الله يفتح عليك

اتفضل اليك الكود

Expr3: IIf(Right([F5];2)="-x";Replace([f5];"-x";"");[F5])

 

  • Like 1
قام بنشر (معدل)
4 دقائق مضت, Shivan Rekany said:

اتفضل اليك الكود


Expr3: IIf(Right([F5];2)="-x";Replace([f5];"-x";"");[F5])

 

فتح الله عليكم وزادكم علما وبارك لكم فى علمكم واسال الله تعالى ان ينفكم بما علمكم
جزاااااااااااكم الله تعالى خيرا  :fff::fff:

استاذ @Shivan Rekany انت لا تدرى حجم الكرب الذى فرجته عنى :rol:
اسأل الله العلى القدير لكم خير الدارين الله يرضى عليك وعلى والديك يارب

تم تعديل بواسطه ابا جودى
  • Like 2
قام بنشر

للاسف فى مشكله
لو الرقم كده   2510112-x5-xx  المفروض يكون كده   2510112

والشكل ده اتحقق مع كود الاستاذ @ابوخليل

لكن لما عملنا داله الاستبدال طبعا لا 
معلش انا اسف استاذ  @Shivan Rekany انا مكنتش مركز فى الارقام شويه لانى كنت مشغول حبة فى الشغل وبصيت على اول صفحة فقط فى الكويريى وبصراحة انا اخدت الكود نسخ ولصق دون النظر اليه
وماخدتش بالى انه دالة الاستبدال 
لانى لو تفتكر من قبل قلت لك عارفها ومش حتنفع معايا 

up

قام بنشر

اريد الرقم   C20626200 xxxxxx    يكون        C20626200

C202111xx                      يكون             C202111

90000582-Series        يكون           90000582

S-11xxx-( )  يكون                        S-11

BA21741xxx-x      يكون          BA21741xxx-x

3A258-xxxx-xx-x   يكون       3A258

هل هناك حل طبعا دى الشواذ التى اريد تعديلها اما باقى الارقام اريدها تظهر كما هى 

 

qs 2003.rar

قام بنشر
39 دقائق مضت, ابا جودى said:

اريد الرقم   C20626200 xxxxxx    يكون        C20626200

C202111xx                      يكون             C202111

90000582-Series        يكون           90000582

S-11xxx-( )  يكون                        S-11

BA21741xxx-x      يكون          BA21741xxx-x

3A258-xxxx-xx-x   يكون       3A258

هل هناك حل طبعا دى الشواذ التى اريد تعديلها اما باقى الارقام اريدها تظهر كما هى 

 

qs 2003.rar

الان انا عم استخدم موبايل

غدا ان شاء الله راح اعود

قام بنشر

انت بحاجة الى وحدة نمطية تضع فيها كل شرط ، هكذا (طبعا لم اضع كل الشروط ، وعليك بإضافتها كلها):

Function Clean_Data(S)

    'S = string of numbers mixed with data
    
    If Right(S, 2) = "-x" Then
        C = Mid(S, 1, Len(S) - 2)
        
    ElseIf Right(S, 5) = "xxxxx" Then
        C = Mid(S, 1, Len(S) - 5)
        
    Else
        C = S
    End If

    Clean_Data = Trim(C)
    
End Function

 

وتنادي الوحدة النمطية من الاستعلام هكذا:

B: Clean_Data([f5])

 

والنتيجة حسب الشروط التي في الوحدة النمطية:

614.Clipboard01.jpg.fa9dc694cf6d93c6d50258a5417ba9b9.jpg

 

جعفر

  • Like 3
قام بنشر

السؤال الان

ماذا عن المربعات الحمراء بمشاركة الاستاذ جعفر اعلاه

مثلا لو

0fx0100axxxx

الاكسات الاخيره ستحذف ولكن ماذا عن الاكس الاولى هل تحذف ؟

  • Like 1
قام بنشر
17 ساعات مضت, رمهان said:

ماذا عن المربعات الحمراء بمشاركة الاستاذ جعفر اعلاه

من العلامات ان في مشاركة استاذنا جعفر  هو ما يريد ابا جودي

 

  • Like 1
قام بنشر
في 4/25/2017 at 00:40, رمهان said:

السؤال الان

ماذا عن المربعات الحمراء بمشاركة الاستاذ جعفر اعلاه

مثلا لو

0fx0100axxxx

الاكسات الاخيره ستحذف ولكن ماذا عن الاكس الاولى هل تحذف ؟

الاكس الاخيرة فقط

قام بنشر
في 4/24/2017 at 21:25, jjafferr said:

انت بحاجة الى وحدة نمطية تضع فيها كل شرط ، هكذا (طبعا لم اضع كل الشروط ، وعليك بإضافتها كلها):


Function Clean_Data(S)

    'S = string of numbers mixed with data
    
    If Right(S, 2) = "-x" Then
        C = Mid(S, 1, Len(S) - 2)
        
    ElseIf Right(S, 5) = "xxxxx" Then
        C = Mid(S, 1, Len(S) - 5)
        
    Else
        C = S
    End If

    Clean_Data = Trim(C)
    
End Function

 

وتنادي الوحدة النمطية من الاستعلام هكذا:


B: Clean_Data([f5])

 

والنتيجة حسب الشروط التي في الوحدة النمطية:

614.Clipboard01.jpg.fa9dc694cf6d93c6d50258a5417ba9b9.jpg

 

جعفر

جزاااااااااااااااااكم الله خيرا استاذى الجليل ومعلمى القدير ووالدى الحبيب @jjafferr

اسأل الله تعالى لكم البركة فى العمر والعلم والعمل ان شاء الله
غفر الله لكم ولوالديكم ومن تحبون
 

  • 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