الرئيسية / فيجوال بيزك / أكواد VBA مفيدة / كود التفقيط – ج2 اللغة الانكليزية
كود التفقيط للغة الانكليزية
كود التفقيط للغة الانكليزية

كود التفقيط – ج2 اللغة الانكليزية

السلام عليكم, بعد طرحنا لكود التفقيط باللغة العربية في المقال السابق, نقوم بطرح كود VBA يقوم بذات المهمة (تفقيط المبلغ الرقمي) ولكن باللغة الإنكليزيّة لنغطي بذلك اهتمامات السمتخدمين الذين تحتم عليهم ظروف عملهم استخدام اللغة الانكليزية في تعاملاتهم. الكود التالي مكتوب بناءاً على كود منشور سابقاً من قبل مايكروسوفت (كود SpellNumber) ليقوم بتفقيط المبالغ بعملة ثابتة وهي الدولار الأمريكي, تم تعديل الكود المذكور لاحقاً من قبل احد المدونين (Yogesh Gupta) لتمكين اختيار نوع عملة التفقيط وجعل العملة الافتراضيّة هي الهنديّة. التعديل الأخير تم من قبلي لتعديل العملة الافتراضيّة لعملة المملكة العربية السعودية وسأشرح في هذه المقالة لاحقاً كيفية تعديل العملة لتناسب احتياجاتك في حال رغبت بتغيير القيم الافتراضيّة كيلا تضطر لتعديلها في كل مرة تريد فيها استخدام هذا الكود.

 

كود التفقيط:

يمكنك نسخ كود التفقيط من صندوق الكود التالي او تحميل ملف المثال من آخر المقالة,

 

ملاحظات على عمل كود التفقيط للغة الإنكليزية:

بعد اضافة الكود الى موديول Module في محرر الفجوال بيزك لديك VBA Editor (او بعد تحميل ملف المثال وفتحه), سيمكنك استخدام كود التفقيط المقترح من خلال ادراجه (اضافته) كدالة ضمن ورقة العمل.

بعض اكواد VBA يكون عملها (كهذا الكود) من خلال انشاء دالة مخصّصة جديدة Function يرمز لها بـ UDF والتي هي اختصار لـ User Defined Formula.

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

ادراج معادلة كود التفقيط
ادراج معادلة كود التفقيط

 

ادراج معادلة كود التفقيط
ادراج معادلة كود التفقيط

 

لاحظ أننا حددنا مجموعة المعادلات User Defined لنتمكن من اظهار هذه المعادلة المخصّصة. سيُظهر لنا اكسل Excel قائمة بكل الـ UDF المتاحة لنا, نختار معادلة كودنا المسماة SpellCurr (المشتقة من Spell Currency)

دراج معادلة كود التفقيط للغة الانكليزية
ادراج معادلة كود التفقيط للغة الانكليزية

 

ومن ثم تقوم بادخال بيانات المعادلة حسب ماسيتم توضيحه لاحقاً, ثم موافق.

ادراج معادلة كود التفقيط للغة الانكليزية
ادراج معادلة كود التفقيط للغة الانكليزية

 

مدخلات كود التفقيط للغة الإنكليزية:

مدخلات كود التفقيط للغة الانكليزية
مدخلات كود التفقيط للغة الانكليزية

 

  • معادلة كود التفقيط المقترحة تحتاج كحد ادنى لتحديد قيمة المبلغ المراد تفقيطه سواءاً بكتابته بشكل مباشر في متن (نص) المعادلة كما في المثال رقم 4 اعلاه أو من خلال تحديد خليّة المبلغ كما في الأمثلة الثلاثة الأولى اعلاه. في هذه الحالة, سيتم تطبيق العملة السعودية (ريال / هللة) على النتيجة افتراضياً الا في حال قمت بتعديل القيمة الافتراضية للمعادلة لتناسب احتياجاتك (سيتم شرحه لاحقاً).
  • الكود يضيف كلمة “only” في نهاية مبلغ التفقيط افتراضياً.
  • عند تحديد عملتك المخصصة (في حال اردت تغيير العملة الافتراضية), لاتحتاج ان تضيف s الجمع في نهاية اسم العملة كون الكود سيضيفها افتراضيّاً.
  • باقي مدخلات المعادلة حسب الرسم التوضيحي اعلاه هي كالتالي,
    • اسم او اختصار اسم العملة الرئيسية. اختياريّة, لاحظ انك يجب ان تحيطها دائماً باشارتي قتباس “” ولا داعي لاضافة s الجمع.
    • موقع كتابة اسم العملة قبل أو بعد المبلغ. “P” لتجعل اسم العملة قبل المبلغ (مشتقلة من كلمة بادئة Prefix), أو “S” لجعل اسم العملة بعد المبلغ (مشتقة من كلمة لاحقة Suffix). بشكل افتراضي, الاسم سيظهر بعد المبلغ.
    • اسم او اختصار اسم عملة الجزء العُشري (الكسري). اختياريّة, لاحظ انك يجب ان تحيطها دائماً باشارتي قتباس “” ولا داعي لاضافة s الجمع.
    • موقع كتابة اسم عملة الجزء العشري (الكسري) قبل أو بعد مبلغ الكسر. “P” لتجعل اسم العملة قبل المبلغ (مشتقلة من كلمة بادئة Prefix), أو “S” لجعل اسم العملة بعد مبلغ الكسر (مشتقة من كلمة لاحقة Suffix). بشكل افتراضي, الاسم سيظهر بعد المبلغ.
  • لاحظ أنني قمت باختيار اعدادات المثال الأول ليتناسب مع العملة المصريّة مع اختيار مكان اسم العملة الرئيسية والجزء العشري قبل المبلغ. في المثال الثاني, لم اختر اي اعدادات وبالتالي اظهر لي كود التفقيط المبلغ مفقطاً باستخدام العملة السعودية. في الكود الثالث, اخترت فقط بيانات العملة القطريّة دون تحديد موقع اسم العملة (قبل او بعد) ليقوم كود التفقيط باظهار الاسم بعد المبلغ بشكل افتراضي.

 

كيفية التعديل على القيم الافتراضية لكود التفقيط:

يمكنك تغيير بعض او جميع القيم الافتراضية لكود التفقيط المقترح لتناسب احتياجاتك كالتالي, بعد نسخ الكود الى محرر الفيجوال بيزك – VBA Editor لديك, يمكنك تعديل القيم حسب التالي,

التعديل على كود التفقيط للغة الإنكليزية
التعديل على كود التفقيط للغة الإنكليزية

 

0. اسم الكود في حال اردت تغييره.

  1. هذا مكان المبلغ. لايمكنك التعديل هنا.
  2. اسم العملة الرئيسية. لاحظ انك يجب ان تحيطها دائماً باشارتي قتباس “”  ولا داعي لاضافة s الجمع.
  3. موقع كتابة اسم العملة قبل أو بعد المبلغ. “P” لتجعل اسم العملة قبل المبلغ (مشتقلة من كلمة بادئة Prefix), أو “S” لجعل اسم العملة بعد المبلغ (مشتقة من كلمة لاحقة Suffix). بشكل افتراضي, الاسم سيظهر بعد المبلغ.
  4. اسم العملة للجزء العُشري. لاحظ انك يجب ان تحيطها دائماً باشارتي قتباس “”  ولا داعي لاضافة s الجمع.
  5. موقع كتابة اسم عملة الجزء العشري (الكسري) قبل أو بعد مبلغ الكسر. “P” لتجعل اسم العملة قبل المبلغ (مشتقلة من كلمة بادئة Prefix), أو “S” لجعل اسم العملة بعد مبلغ الكسر (مشتقة من كلمة لاحقة Suffix). بشكل افتراضي, الاسم سيظهر بعد المبلغ.

يجب التبنيه اخيراً انه وفي حالة اضفت هذه المعادلة داخل ملف العمل الذي يحوي الكود, ستظهر لك المعادلة كما هي مكتوبة اعلاه. اما لو حفظت الكود في ملف عمل آخر ومن ثم حاولت استخدام هذه المعادلة (يجب ان تكون ورقة العمل المذكورة مفتوحة الا في حال كان الكود محفوظاً في الملف الشخصي Personal, لمزيد من المعلومات حول هذه النقطة, راجع الروابط اسفل المقالة) فإنك ستحصل على المعادلة مسبوقة باسم ملف العمل الذي يحوي الكود. لا مشكلة اذا ان النتيجة ستكون هي ذاتها.

ادراج كود التفقيط من ورقة عمل اخرى
ادراج كود التفقيط من ورقة عمل اخرى

للتوضيح, في حال كنت تتسائل مثلي عن معنى كلمة تفقيط. فاعلم انها مشتقة من كلمة فَقَط وفعل فَقَّط والتي تعني (مثلاً فقّط الحساب) ختمه بكلمة « فقط » مع تعيين مقداره خوفا من التزوير

روابط مهمّة:

أخيراً ملف المثال المذكور في المقالة.

عن Hussein.B

مؤسس ومدير موقع viaexcel.com, اعمل في مجال الإئتمان, مهتم بمواضيع التدريب وتطوير الذات بالإضافة لحبي الشديد لبرنامج اكسل.

4 تعليقات

  1. السلام عليكم ورحمة الله وبركاته
    تحيه طيبه وبعد
    كيف اصنع ورقت عمل تضمن فاتوره متغيره ويتم ترحيل الاصناف برقم الكود بالطرح او الجمع فى المخزن وعمل استعلام برقم الفاتوره او رقم الصنف خلال فتره لكم جزيل الشكر

    • وعليكم السلام أخ أشرف. طلبك كبير جداً ويحتاج عمل لأنه اقرب لبرنامج مخازن وفوترة. لا استطيع مساعدتك بالحل. يمكنك البحث عن برامج مخزون, فوترة او حتى محاسبية على اكسل باللغة العربية.

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

        Sub حفظ_الفاتورة()
        Dim fw As Variant
        ActiveSheet.Copy
        fw = “c:\bb\فاتورة بيع رقم” & Range(“g3”).Value & “.xlsx”
        ActiveWorkbook.SaveAs fw, FileFormat:=xlOpenXMLWorkbook
        ActiveWorkbook.Close
        End Sub

        • اهلاً اخ اشرف. مثل مانوهت بردي الأول, خبرتي بالأكواد محدودة جداً وبالتالي مارح اقدر فيدك. ممكن تراسل صاحب الفيديو اللي اطلعت عليه للمساعدة. بالتوفيق.

أضف تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *