السلام عليكم
هل يوجد دالة تقوم بتحويل الارقام الى حروف حيث انني اريد ان ادخل معدل طالب مثلا 98 فيقوم الاكسل تلقائيا بقرائتها ثمانية وتسعون وهكذا
ارجوا ان اكون قد استطعت ان اوضح طلبي
وجزاكم الله خيرا.
السلام عليكم
هل يوجد دالة تقوم بتحويل الارقام الى حروف حيث انني اريد ان ادخل معدل طالب مثلا 98 فيقوم الاكسل تلقائيا بقرائتها ثمانية وتسعون وهكذا
ارجوا ان اكون قد استطعت ان اوضح طلبي
وجزاكم الله خيرا.
للرفع
سلام الله عليك
سوف تجدين في هذا الملحق ضالتك
إن شاء الله
هذا ملف إكسل وبه دالة تحويل الأرقام إلى حروف
الف شكر لك على هذا المثال
ولكنني لا اريد ان تظهر كلمة فقط وهي اساسية في هذه الدالة فكيف استطيع حذفها
ام ان هناك دالة اخرى
حيث انني اريد ان يظهر كالتالي 99 تسعة وتسعون وهكذا
وانا اسفة على ازعاجك
وبارك الله فيك
الأرقام للرقم 29 بواسطة الدالة choos
جزاك الله خيراً
فالدالة جيدة جداً ، ولكن هل تسمح بشرح كود الدالة ليتسنى لنا تعديلها حسب الحاجات
أكرر لك منا جزيل الشكر و الإحترام
الله يبارك فيك
الدالة كتبتها من أربع سنوات والحقيقة أنني لم أعد إليها للتعديل.
أحاول أن أشرحها لاحقا.
تحياتي
لا أدري وأنا أقرأ كلماتك أحس بالقرب لذلك بوسعي أن أقول لك السلام عليكم ورحمة الله وبركاته
أخي المحترم
شعرت من خلال الدالة أن لديك قدرة حسنة على كتابة الدوال
فإذا تكرمت تشرح لنا إنشاء الدوال بشكل عام وتشرح الدالة السابقة كمثال
وجزاك الله عنا كل خير
أخوكم أبو مصعب
وعليكم السلام ورحمة الله تعالى وبركاته
نعم تعودت على كتابة الدوال في إكسل وأعتمد عليه في إنجاز بعض التطبيقات البسيطة.
وكما سبق وأن ذكرت سأرجع إلى أربع سنوات للوراء وأعيد كتابة الدالة بشيء من الشرح.
لكم تحياتي.
هذه دالة التفقيط من برمجتي في أكسس
مع مثال على استخدامها بمختلف الحالات
وهي تقبل أرقام إلى 12 خانة و تدعم الأرقام بعد الفاصلة
أرجو أن تفيدكم
الأخ محمد العبادي
جزاك الله خيرا
إذا سمحت أتابع الكود خطوة بخطوة ثم لا ألبث أن أتوه فحبذا لو تكرمت بشرح الكود ليتسنى لنا فهمه و تدريسه خصوصاً أنني أعمل في حقل التعليم
و الله لا يضيع أجر من أحسن عملا أخوكم ابن البلد
لو سمحتوا انا عايز تفيقط الأرقام إلى حروف في الأكسس مع الشرح
لو سمحتوا انا عايز تفقيط الأرقام إلى حروف على الأكسس وإذا امكن الشرح على عنواني (ebraheem_509@hotmail.com) وشكرا
أنا عندي التفقيط باللغة الانجليزية كمان لو حد عايزة
لوسمحتم
بالنسبة لتحويل الأرقام الى حروف....
انا نزلت الملفات المرفقة ولكن لا تعمل... حيث يظهر الخطأ
#NAME?
يبدو لأنه الدوال غير مضافة... فكيف يمكن اضافتها أو حتى رؤية كودها لأنى لاحظت
ان الشباب قاموا بتتبع الكود فيها
..
شكرا
بارك الله فيكم على هذا المنتدى الرائع والمتميز
حسن ..... مبرمج ..... فلسطين
hassan.alaraishy@gmail.com
أرجو ارساله على ايميلي
Hassanoracle@hotmail.com
شكرا
بارك الله فيكم على هذا المنتدى الرائع والمتميز
حسن ..... مبرمج ..... فلسطين
hassan.alaraishy@gmail.com
الإخوة العزاء
ممكن عمل تحول الأرقام الى حروف بطريقتين:
1- دالة choose والتي تكرم احد الاخوة بالحديث عنها
2- دالة lookup ولها شكلان الأول Dlookup وهي شبيهة بالأكسس مع بعض الاختلاف في نطاق اخذ المتغيرات، والثاني vlooup ويستخدم عند الحاجة لنطاقات كبيرة. المهم:
ممكن عمل قائمة في احد اجزاء ورقة العمل العمود الول منها هو الرقم والثاني هو الترجمة الحرقية مباشرة له وجربتها وبصراحة تعطي نتائج مذهلة اذا استخدمت دالة lookup. فيكون نطاق البحث هو القائمة ونطاق الارجاع هو عمود الحروف
دالة choose لا تاخذ ارقاما اكبر من 9 اي فقط تتعامل مع رقم من خانة واحدة حسب ما جرى معي، وبالتالي يتطلب استخدامها تقسيم الرقم الى احاد وعشرات وترجمة كل منها الى ما يقابله في الحروف. وايضا تعطي نتائج صحيحية
بقي استخدام كلمة "و" بينها وهو من خلال عمل شرط على ان الخلية الفارغة لا تحتسب واذا كانت الخليتان اي الاحاد والعشرات غير فارغتين يترجم كل منها الىة ما يقابله
مثال ذلك ما يستخدم في الجداول المدرسية وهو ما قمت ببناءه من الصفر تقريبا في المدرسة التي اعمل بها
مثال اخر على استخدام lookup هو القاموس المذهل الذي قمت ببرمجته ليعطى اسم الطالب بالغة الانجليزية بمجرد ادخال اسمه بالعربية في الخلية المقابلة، وسأشرحه لاحقا مع مرفق به مثال بسيط
ارجو ان اكون قد افدت وشكرا
لا استطيع الدخول بمعرفي كمشرف..هذا معرف سابق استرجعت كلمة المرور له
اشك ان عضويتي كمشرف حذفت
شكرا و جزاكم الله خير
شكرا
جزاك الله ألف ألف ألف خير يا أخي
شكرا على جهودكم العظيمة ونرجوا من الله ان يوفقكم لخير عباده
السلام عليكم ورحمة الله وبركاته
تعقيب على الأخ القائل
اقتباسانا نزلت الملفات المرفقة ولكن لا تعمل... حيث يظهر الخطأ#NAME?
تأكد من وضع الـ Security أن لا يكون فى أعلى حالاته كخطوه أولى
وإقبل تمكين الماكرو كخطوه ثانية
أما بخصوص الكود فيمكننا وضعه هنا على المكشوف ليمكن للإخوه من التعامل معه سواء فى إكسل أو أكسس أو فيجوال بيزيك أو أى تطبيق يقبل VBA
1- التفقيط العربى
سأرفق مديول لعدم تمكنى من لصق الكود هنا فالكلمات العربية لا تظهر بشكل طبيعى
2- التفقيط بالإنجليزى
Option Explicit Dim Number2s(2 To 9), Number1s(1 To 19), Steps(1 To 4) As String Public Function NumToWord(Numstring As Double) As String If Steps(1) = "" Then initstrings Dim Tempstring As String Dim Newstring As String Dim What As Double Dim Counter As Long If Numstring = 0 Then NumToWord = "zero" Exit Function End If If Numstring > (10 ^ 24) Then NumToWord = "Number is too big" Exit Function End If Counter = 0 Do Counter = Counter + 1 If Counter > 1 Then What = 10 ^ (12 \ ((Counter - 1) * 2)) Else What = 10 ^ 12 End If If Numstring >= What Then Newstring = NumToWord(Fix(Numstring / What)) Numstring = ((Numstring / What) - Fix(Numstring / What)) * What If Numstring = 0 Then Tempstring = Tempstring & Newstring & Steps(Counter) & " " Else If Counter = 4 Then Tempstring = Tempstring & Newstring & Steps(Counter) _ & " and ": GoTo Skipit Tempstring = Tempstring & Newstring & Steps(Counter) & ", " Skipit: End If End If Loop Until Counter = 4 If CInt(Numstring) >= 20 Then _ Tempstring = Tempstring & Number2s(Fix(Numstring / 10)) & " " If CInt(Numstring) >= 10 And CInt(Numstring) < 20 Then _ Tempstring = Tempstring & Number1s(CInt(Numstring)) & " ": GoTo Skip2 Numstring = ((Numstring / 10) - Fix(Numstring / 10)) * 10 If CInt(Numstring) > 0 Then Tempstring = Tempstring & Number1s(CInt(Numstring)) & " " Skip2: NumToWord = Tempstring End Function Public Sub initstrings() Steps(1) = "billion": Steps(2) = "million" Steps(3) = "thousand": Steps(4) = "hundred" Number1s(1) = "one": Number1s(2) = "two" Number1s(3) = "three": Number1s(4) = "four" Number1s(5) = "five": Number1s(6) = "six" Number1s(7) = "seven": Number1s(8) = "eight" Number1s(9) = "nine": Number1s(10) = "ten" Number1s(11) = "eleven": Number1s(12) = "twelve" Number1s(13) = "thirteen": Number1s(14) = "fourteen" Number1s(15) = "fifteen": Number1s(16) = "sixteen" Number1s(17) = "seventeen": Number1s(18) = "eighteen" Number1s(19) = "nineteen": Number2s(2) = "twenty" Number2s(3) = "thirty": Number2s(4) = "forty" Number2s(5) = "fifty": Number2s(6) = "sixty" Number2s(7) = "seventy": Number2s(8) = "eighty" Number2s(9) = "ninety" End Sub
عن عبدالله بن عمر رضي الله عنهما أن رسول الله صلى الله عليه وسلم قال :
( أحب الناس إلى الله أنفعهم ، وأحب الأعمال إلى الله عز وجل سرور تدخله على مسلم ، أو تكشف عنه كربة ، أو تقضي عنه دينا ، أو تطرد عنه جوعا ، ولأن أمشي مع أخي المسلم في حاجة أحب إليّ من أن اعتكف في المسجد شهرا ، ومن كف غضبه ستر الله عورته ، ومن كظم غيظا ، ولو شاء أن يمضيه أمضاه ، ملأ الله قلبه رضا يوم القيامة ، ومن مشى مع أخيه المسلم في حاجته حتى يثبتها له ، أثبت الله تعالى قدمه يوم تزل الأقدام ، وإن سوء الخلق ليفسد العمل كما يفسد الخل العسل )
رواه الطبراني في الكبير