Вывести число прописью - VB
Формулировка задачи:
С клавиатуры вводится двузначное число. Вывести на на форму в словесной записи. Например 41 - сорок один
помогите пожалуйста)
Решение задачи: «Вывести число прописью»
textual
Листинг программы
Option Explicit
Private Sub Command1_Click()
Dim SS, S As String, i As Integer
Text1.SetFocus
If Text1.Text = "" Then
MsgBox "Введите число"
End If
S = Val(Text1.Text)
SS = Split(S)
For i = 0 To UBound(SS)
If IsNumeric(SS(i)) Then SS(i) = num2text_word(CLng(SS(i)))
Next i
Label1.Caption = Join(SS)
End Sub
Function num2text_word(x As Long, Optional Lang As Long = 1049) As String
With CreateObject("word.document")
.Range.LanguageID = Lang
.Fields.Add .Range, Type:=-1, Text:="=" & x & " \* cardtext"
num2text_word = Replace(.Range.Text, vbCr, "")
.Close 0
End With
End Function
Private Sub Form_Activate()
Text1.SetFocus
End Sub