تفقيط الأرقام في إكسل باستخدام مكتبة التفقيط num2a
Submitted by Issam Ali on Sat, 12/03/2016 - 16:19num2a هي مكتبة لفقيط الأرقام باللغة العربية مفتوحة المصدر قمت بكتابتها بلغة السي C . معلومات أكثر حول هذه المكتبة يمكنك أن تجدها في هذا المقال . نشرت هذه المكتبة على موقع github ويمكنك تحميلها من هذا الرابط. كما يمكنك تجريب المكتبة وتوابع التفقيط من خلال هذه الصفحة التي تستخدم مكتبة التفقيط num2a.
أحد الأسباب التي دفعتني لكتابة/برمجة هذه المكتبة كما ذكرت في مقالي الأول هو أنني أرغب بحل برمجي للتفقيط يمكن استخدامه في منصات ولغات برمجة مختلفة بسهولة. هناك من استفسر إذا كان بالإمكان استخدام هذه المكتبة لإجراء عمليات التفقيط في أكسل؟ نعم بالتأكيد هذا ممكن، وقد اضفت مثالاً يوضح ذلك إلى مجموعة الأمثلة المرفقة مع المكتبة، المثال موجود ضمن مجلد Excel في الدليل Examples .كما يمكنك تحميله بشكل مستقل من هذا الرابط. و هنا فيديو يوضح هذا المثال واستخدام مكتبة التفقيط في إكسل
ستلاحظ في مجلد مثال Excel هناك ملف اكسل بالاضافة إلى مكتبة التفقيط جاهزة للاستخدام prebuilt . لرؤية سكريبت الفيجوال بيسك (الماكرو) الذي يقوم باستدعاء تابع التفقيط من المكتبة num2a ، انتقل إلى لسان التبويب Developer واختر Visual Basic . أو يمكنك استخدام الاختصار (Alt + F11) من لوحة المفاتيح.
عندها ستجد السكريبت ضمن Module1 . يمكنك استخدام هذا السكريبت ضمن أي ملف أكسل، طبعا انت بحاجة إيضا إلى مكتبة التفقيط num2a.dll فقط قم بتغيير مسار المكتبة ضمن السكريبت إلى مكان وجود المكتبة في حاسبك.
Declare Function get_fnum2aW Lib "d:\num2a\examples\excel\num2a.dll" Alias "_get_fnum2aW@60"
أيضاً يمكنك تغيير اسماء المعدود حسب المعدود الذي تتعامل معه.
مثال الإكسل مرفق معه مكتبة num2a.dll جاهزة للاستخدام prebuilt لكن في حال كانت لديك خبرة في البرمجة وكنت ترغب ببناء مكتبة num2a من النص المصدري عليك أن تنتبه إلى ملاحظة مهمة وهي أن نمط استدعاء التوابع في المكتبة يجب أن يكون __stdcall وليس __cdecl لتستطيع استدعائها في vba لذلك قبل بناء المكتبة غير التعريف CALL_CONV إلى
#define CALL_CONV __stdcall
ثم قم ببناء المكتبة كالمعتاد.