Monday, 17 March 2025

Automatic Shortcut Key to Convert Numbers to Text in MS Word

MS Word is a one of the best tool for word processing, but unlike excel MS Word doesn’t have any direct way to convert Numbers to words, however you can make it possible by using Macros. In this article I will show you how create Macros for number to text or words. And also shows you how to create shortcut key to convert number to text in Microsoft word. You can watch the below video for butter understand. 


Macros Code:

MyNumber = Val(Selection.Text)

   Dim Temp

         Dim Rupees, Paise

         Dim DecimalPlace, Count

          ReDim Place(9) As String

         Place(2) = " Thousand "

         Place(3) = " Lakh "

         Place(4) = " Crore "

          MyNumber = Trim(Str(MyNumber))

          DecimalPlace = InStr(MyNumber, ".")

          If DecimalPlace > 0 Then

              Temp = Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2)

              Paise = ConvertTens(Temp)

             MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))

         End If

          Count = 1

        If MyNumber <> "" Then

             Temp = ConvertHundreds(Right(MyNumber, 3))

             If Temp <> "" Then Rupees = Temp & Place(Count) & Rupees

             If Len(MyNumber) > 3 Then

               MyNumber = Left(MyNumber, Len(MyNumber) - 3)

            Else

               MyNumber = ""

            End If

         End If

             Count = 2

            Do While MyNumber <> ""

            Temp = ConvertTens(Right("0" & MyNumber, 2))

             If Temp <> "" Then Rupees = Temp & Place(Count) & Rupees

            If Len(MyNumber) > 2 Then

            MyNumber = Left(MyNumber, Len(MyNumber) - 2)

             Else

               MyNumber = ""

            End If

            Count = Count + 1

             Loop

               Select Case Rupees

            Case ""

               Rupees = ""

            Case "One"

               Rupees = "One Rupee"

            Case Else

               Rupees = Rupees & " Rupees"

         End Select

          Select Case Paise

            Case ""

               Paise = ""

            Case "One"

               Paise = "One Paise"

            Case Else

               Paise = Paise & " Paise"

         End Select

          If Rupees = "" Then

         Result = Paise

         ElseIf Paise = "" Then

         Result = Rupees

         Else

         Result = Rupees & " and " & Paise

         End If

         Selection.Text = Result

 End Sub

Private Function ConvertDigit(ByVal MyDigit)

        Select Case Val(MyDigit)

            Case 1: ConvertDigit = "One"

            Case 2: ConvertDigit = "Two"

            Case 3: ConvertDigit = "Three"

            Case 4: ConvertDigit = "Four"

            Case 5: ConvertDigit = "Five"

            Case 6: ConvertDigit = "Six"

            Case 7: ConvertDigit = "Seven"

            Case 8: ConvertDigit = "Eight"

            Case 9: ConvertDigit = "Nine"

            Case Else: ConvertDigit = ""

         End Select

 End Function

Private Function ConvertHundreds(ByVal MyNumber)

 Dim Result As String

      If Val(MyNumber) = 0 Then Exit Function

                   MyNumber = Right("000" & MyNumber, 3)

                If Left(MyNumber, 1) <> "0" Then

            Result = ConvertDigit(Left(MyNumber, 1)) & " Hundred "

         End If

          If Mid(MyNumber, 2, 1) <> "0" Then

            Result = Result & ConvertTens(Mid(MyNumber, 2))

         Else

              Result = Result & ConvertDigit(Mid(MyNumber, 3))

         End If

          ConvertHundreds = Trim(Result)

End Function

 Private Function ConvertTens(ByVal MyTens)

          Dim Result As String

          If Val(Left(MyTens, 1)) = 1 Then

         Select Case Val(MyTens)

              Case 10: Result = "Ten"

               Case 11: Result = "Eleven"

               Case 12: Result = "Twelve"

               Case 13: Result = "Thirteen"

               Case 14: Result = "Fourteen"

               Case 15: Result = "Fifteen"

               Case 16: Result = "Sixteen"

               Case 17: Result = "Seventeen"

               Case 18: Result = "Eighteen"

               Case 19: Result = "Nineteen"

               Case Else

               End Select

               Else

                        Select Case Val(Left(MyTens, 1))

               Case 2: Result = "Twenty "

               Case 3: Result = "Thirty "

               Case 4: Result = "Forty "

               Case 5: Result = "Fifty "

               Case 6: Result = "Sixty "

               Case 7: Result = "Seventy "

               Case 8: Result = "Eighty "

               Case 9: Result = "Ninety "

               Case Else

            End Select

              ' Convert ones place digit.

            Result = Result & ConvertDigit(Right(MyTens, 1))

         End If

          ConvertTens = Result


Top Free Games for Samsung Smart TV Playable with TV Remote

Samsung Smart TVs offer a great way to enjoy gaming with out the need for a console or additional hardware. With just your TV remote, you ca...