افتراضي طريقة فصل الكلمة العربية عن الإنجليزية في خلية واحدة

عند وجود الكلمة العربية و الإنجليزية في خلية واحدة و نريد فصلها في خليتين منفصلتين تمام, و ذلك بهدف تصميم قاموس, هذا ما طلب مني, حيث كانت البيانات كالتالي :

 

3 Accountant المحاسب 

4 Accountants المحاسبون 

5 Audit Report تقرير المراجعة 

6 Auditing المراجعة - تدقيق الحسابات 

 

المطلوب أن يتم فصل الكلمة العربية في الخلية B و الكلمة الإنجليزية في الخلية C بحيث تكون النتيجة بالشكل التالي :

 

 

B C 

3 المحاسب Accountant 

4 المحاسبون Accountants 

5 تقرير المراجعة Audit Report 

6 المراجعة - تدقيق الحسابات Auditing 

 

و لعمل ذلك كان يجب التفكير بطريقة تساعد على الإكسيل على التعرف على موقع بداية اول حرف عربي و من ثم يقوم بفصل الجزء العربي و كانت الدالة المناسبة هي الدالة 

 

Code 

 

حيث ان عمل هذه الدالة يقوم على إعادة رقم الحرف كما هو في نظام 

 

Ascii

 

و الأحرف العربية تبدأ من رقم 192 

 

و ربطها بالدالة 

 

MID 

 

بحيث نعرف نقطة البداية في فصل الكلمات , فكانت الدالة التالية :

 

كود PHP:

=MID(A3,MATCH(1,IF(CODE(MID(A3,ROW(INDIRECT("1:"&LEN(A3))),1))>=192,1),0),255)  

__________________

و كما نرى لقد قمت بإستخدام الدالتين 

ROW and INDIRECT

بهدف عمل تسلسل رقم حسب عدد احرف الكلمة داخل الخلية 

و من ثم استخدمت الدالة 

MID 

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

CODE 

في معرف رقم كل حرف و التي ستلزمنا بشكل كبير عن عملية الفحص مع الدالة 

IF

بحث اذا كان رقم الحرف اكبر او يساوي 192 فستقوم بتعويض الرقم 1 بدل منها و بذلك نحصل على صفيف من الرقم 0 و 1 و هنا يأتي دور الدالة 

MATCH 

التي ستبحث عن الرقم 1 في الصفيف لتعيد لنا موقعه ولكن لاحظ أننا إستخدمنا معيار البحث 0 و الذي يعني الوقوف عن ايجاد اول قيمة مطابقة لموضع البحث, و بعد ان يتم تحديد الموقع تكون بداية عمل الدالة 

MID 

بحيث سيتم عملية الفصل من الموقع الذي تم تحديده و حتى 255 حرف 

و بهذا الخطوة نحصل على الكلمة العربية الموجودة داخل الخلية 

و لا ننسى أن هذه معادلة صفيف يجب إدخالها بالضغط على 

Ctrl+Shift+Enter

 

و الخطوة الثانية و التي تهدف للحصول على الكلمة الإنجليزية في الخلية 

C3

استخدمنا المعادلة البسيطة التالية :

 

كود PHP:

=TRIM(LEFT(A3,LEN(A3)-LEN(B3)))  

__________________

و هي ببساطة لبداية عملية الفصل من الشمال و لمعرفة عدد العناصر التي سنقتطعها نقوم بطرح عدد احرف الخلية الاصلية من عدد احرف الخلية التي تحتوي كلمة عربية 

=============

أتمنى ان تستفيدو من شرح هذه الدالة 

لمشاهدة الفيديو على الرابط 

 

https://www.youtube.com/watch?v=l1oexlVSwPI&feature=youtu.be

 

 

دمتم في حفظ الله


يحيى حسين 

Excel MVP 

اترك تعليقك

الاسم
:

البريد الإلكتروني
:


رقم الهاتف
:


التعليق
:

التعليقات