السلام عليكم
دالة صغيرة "للتفقيط" إن صح التعبير للأجزاء والأحزاب ، قد تساعد في التقليل من المساحة للجداول .
Function Num2Text(ByVal InNum As Byte, ByVal InItem As String) As String
Dim A, B
A = Array("أول", "ثاني", "ثالث", "رابع", "خامس", "سادس", _
"سابع", "ثامن", "تاسع", "عاشر", "حادي عشر")
B = Array("عشر", "ثلاث", "أربع", "خمس", "ست", "سبع", "ثمان", "تسع")
Num2Text = ""
If InNum < 0 Or InNum > 99 Then Exit Function
Select Case InNum
Case 1 To 11: Num2Text = "ال" & A(InNum - 1)
Case 12 To 19: Num2Text = "ال" & A(InNum - 11) & " عشر"
Case 20 To 99
Select Case InNum Mod 10
Case 0: Num2Text = "ال" & B(Fix(InNum / 10) - 2) & "ون"
Case 1: Num2Text = "الحادي وال" & B(Fix(InNum / 10) - 2) & "ون"
Case Else: Num2Text = "ال" & A((InNum Mod 10) - 1) & " وال" & B(Fix(InNum / 10) - 2) & "ون"
End Select
End Select
Num2Text = InItem & " " & Num2Text
End Function
Sub Test()
MsgBox Num2Text(21, "الجزء")
MsgBox Num2Text(41, "الحزب")
End Subتحياتي .








