bin7shr قام بنشر ديسمبر 1, 2017 قام بنشر ديسمبر 1, 2017 اقدم لكم اليوم مديول أو دالة التفقيط تحويل الارقام لـ نص بالسالب والموجب (مدين - دائن) استخدام الدالة بالتنسيق التالي: صورة: =NoToTxt(O279;"ريالاً لاغير";"هللة") Option Explicit Function NoToTxt(TheNo As Double, MyCur As String, MySubCur As String) As String Dim MyArry1(0 To 9) As String Dim MyArry2(0 To 9) As String Dim MyArry3(0 To 9) As String Dim MyNo As String Dim GetNo As String Dim RdNo As String Dim My100 As String Dim My10 As String Dim My1 As String Dim My11 As String Dim My12 As String Dim GetTxt As String Dim Mybillion As String Dim MyMillion As String Dim MyThou As String Dim MyHun As String Dim MyFraction As String Dim MyAnd As String Dim i As Integer Dim ReMark As String If TheNo > 999999999999.99 Then Exit Function If TheNo < 0 Then TheNo = TheNo * -1 ReMark = "رصيـــد مدين مبلغ وقدرة فقط " Else ReMark = "رصيـــد دائن مبلغ وقدرة فقط " End If If TheNo = 0 Then NoToTxt = "الرصيد صفر لاغير" Exit Function End If MyAnd = " و" MyArry1(0) = "" MyArry1(1) = "مائة" MyArry1(2) = "مائتان" MyArry1(3) = "ثلاثمائة" MyArry1(4) = "أربعمائة" MyArry1(5) = "خمسمائة" MyArry1(6) = "ستمائة" MyArry1(7) = "سبعمائة" MyArry1(8) = "ثمانمائة" MyArry1(9) = "تسعمائة" MyArry2(0) = "" MyArry2(1) = " عشر" MyArry2(2) = "عشرون" MyArry2(3) = "ثلاثون" MyArry2(4) = "أربعون" MyArry2(5) = "خمسون" MyArry2(6) = "ستون" MyArry2(7) = "سبعون" MyArry2(8) = "ثمانون" MyArry2(9) = "تسعون" MyArry3(0) = "" MyArry3(1) = "واحد" MyArry3(2) = "اثنان" MyArry3(3) = "ثلاثة" MyArry3(4) = "أربعة" MyArry3(5) = "خمسة" MyArry3(6) = "ستة" MyArry3(7) = "سبعة" MyArry3(8) = "ثمانية" MyArry3(9) = "تسعة" GetNo = Format(TheNo, "000000000000.00") i = 0 Do While i < 15 If i < 12 Then MyNo = Mid$(GetNo, i + 1, 3) Else MyNo = "0" + Mid$(GetNo, i + 2, 2) End If If (Mid$(MyNo, 1, 3)) > 0 Then RdNo = Mid$(MyNo, 1, 1) My100 = MyArry1(RdNo) RdNo = Mid$(MyNo, 3, 1) My1 = MyArry3(RdNo) RdNo = Mid$(MyNo, 2, 1) My10 = MyArry2(RdNo) If Mid$(MyNo, 2, 2) = 11 Then My11 = "إحدى عشر" If Mid$(MyNo, 2, 2) = 12 Then My12 = "إثنى عشر" If Mid$(MyNo, 2, 2) = 10 Then My10 = "عشرة" If ((Mid$(MyNo, 1, 1)) > 0) And ((Mid$(MyNo, 2, 2)) > 0) Then My100 = My100 + MyAnd If ((Mid$(MyNo, 3, 1)) > 0) And ((Mid$(MyNo, 2, 1)) > 1) Then My1 = My1 + MyAnd GetTxt = My100 + My1 + My10 If ((Mid$(MyNo, 3, 1)) = 1) And ((Mid$(MyNo, 2, 1)) = 1) Then GetTxt = My100 + My11 If ((Mid$(MyNo, 1, 1)) = 0) Then GetTxt = My11 End If If ((Mid$(MyNo, 3, 1)) = 2) And ((Mid$(MyNo, 2, 1)) = 1) Then GetTxt = My100 + My12 If ((Mid$(MyNo, 1, 1)) = 0) Then GetTxt = My12 End If If (i = 0) And (GetTxt <> "") Then If ((Mid$(MyNo, 1, 3)) > 10) Then Mybillion = GetTxt + " مليار" Else Mybillion = GetTxt + " مليارات" If ((Mid$(MyNo, 1, 3)) = 2) Then Mybillion = " مليار" If ((Mid$(MyNo, 1, 3)) = 2) Then Mybillion = " ملياران" End If End If If (i = 3) And (GetTxt <> "") Then If ((Mid$(MyNo, 1, 3)) > 10) Then MyMillion = GetTxt + " مليون" Else MyMillion = GetTxt + " ملايين" If ((Mid$(MyNo, 1, 3)) = 1) Then MyMillion = " مليون" If ((Mid$(MyNo, 1, 3)) = 2) Then MyMillion = " مليونان" End If End If If (i = 6) And (GetTxt <> "") Then If ((Mid$(MyNo, 1, 3)) > 10) Then MyThou = GetTxt + " ألف" Else MyThou = GetTxt + " آلاف" If ((Mid$(MyNo, 3, 1)) = 1) Then MyThou = " ألف" If ((Mid$(MyNo, 3, 1)) = 2) Then MyThou = " ألفان" End If End If If (i = 9) And (GetTxt <> "") Then MyHun = GetTxt If (i = 12) And (GetTxt <> "") Then MyFraction = GetTxt End If i = i + 3 Loop If (Mybillion <> "") Then If (MyMillion <> "") Or (MyThou <> "") Or (MyHun <> "") Then Mybillion = Mybillion + MyAnd End If If (MyMillion <> "") Then If (MyThou <> "") Or (MyHun <> "") Then MyMillion = MyMillion + MyAnd End If If (MyThou <> "") Then If (MyHun <> "") Then MyThou = MyThou + MyAnd End If If MyFraction <> "" Then If (Mybillion <> "") Or (MyMillion <> "") Or (MyThou <> "") Or (MyHun <> "") Then NoToTxt = ReMark + Mybillion + MyMillion + MyThou + MyHun + " " + MyCur + MyAnd + MyFraction + " " + MySubCur Else NoToTxt = ReMark + MyFraction + " " + MySubCur End If Else NoToTxt = ReMark + Mybillion + MyMillion + MyThou + MyHun + " " + MyCur End If End Function NoToTxt.rar
TopAccess قام بنشر أكتوبر 23, 2019 قام بنشر أكتوبر 23, 2019 هلا يالغالي مرفق الملف مع الشكر والتقدير ,,, TEST -V1.xlsx
أفضل إجابة Ali Mohamed Ali قام بنشر أكتوبر 23, 2019 أفضل إجابة قام بنشر أكتوبر 23, 2019 بالتأكيد لابد ان يحدث مشكلة معك فلم تضع الكود داخل الملف ولم تقم بحفظ الملف بصيغة XLSM طالما الملف به كود TEST -V2.xlsm 1
TopAccess قام بنشر أكتوبر 24, 2019 قام بنشر أكتوبر 24, 2019 جزاك الله خير لكن المشكلة مازالت تظهر , حسب الصورة المرفقة ؟!
Ali Mohamed Ali قام بنشر أكتوبر 24, 2019 قام بنشر أكتوبر 24, 2019 لا أعرف ما السبب عندك فالكود يعمل معى بكل كفاءة فالمشكلة من عندك 1
bin7shr قام بنشر أكتوبر 25, 2019 الكاتب قام بنشر أكتوبر 25, 2019 حاول أستخدام الفاصلة المنقوطة كما يجب حفظ المديول في ملف الاكسل أولاً =NoToTxt(C2;"ريالاً لاغير";"هللة") تحياتي
TopAccess قام بنشر أكتوبر 30, 2019 قام بنشر أكتوبر 30, 2019 يعطيك العافية لكن المشكلة مازالت غريبة ؟ ارجوا النظر للمرفقات بارك الله فيك
أحمد يوسف قام بنشر أكتوبر 30, 2019 قام بنشر أكتوبر 30, 2019 اخى الكريم TopAccess جرب الفاصة العادية فى المعادلة والا كان لزاما عليك رفع الملف الذى به المشكلة من البداية للعمل على حلها بدلا من اظهار كل هذا -فلابد من غلق هذا الموضوع لأنه اخذ معنا أكبر من حجمه بهذه الطريقة
Hamdi Edlbi-khalf قام بنشر أكتوبر 30, 2019 قام بنشر أكتوبر 30, 2019 السلام عليكم المشكلة لديك هي بإعدادات لغة الحاسب عليك بجعل لغة Unicode العربية و سيعمل الكود لديك بشكل مناسب.
الردود الموصى بها