"Module" to insert a new VBA module. 4. Write macro code: Write VBA code in a new module, for example: FunctionConvertToWordsWithCents(ByValMyNumber)Di"/> "Module" to insert a new VBA module. 4. Write macro code: Write VBA code in a new module, for example: FunctionConvertToWordsWithCents(ByValMyNumber)Di">

Home  >  Article  >  Software Tutorial  >  Create a detailed macro with rounded corners in Excel to convert numbers into uppercase

Create a detailed macro with rounded corners in Excel to convert numbers into uppercase

WBOY
WBOYforward
2024-01-22 11:24:23490browse

1. How to convert numbers into uppercase and rounded corners in excel?

If you want to convert the numbers in Excel to uppercase with rounded corners, you can do it by following these steps:

  1. 1. Prepare data: Enter the numbers that need to be converted in Excel.

  2. 2. Open the VBA editor: Press Alt F11 to open the VBA editor.

  3. 3. Insert a new module: In the VBA editor, right-click any item in the project browser on the left and select "Insert" > "Module ” to insert a new VBA module.

  4. 4. Write macro code: Write VBA code in a new module, for example:

    Function ConvertToWordsWithCents(ByVal MyNumber)
        Dim Temp
        Dim DecimalPlace, Count
        ReDim Place(9) As String
        Place(2) = " Thousand "
        Place(3) = " Million "
        Place(4) = " Billion "
        Place(5) = " Trillion "
    
        ' Convert MyNumber to STRING
        MyNumber = Trim(CStr(MyNumber))
    
        ' If MyNumber is blank then we're done
        If MyNumber = "" Then Exit Function
    
        ' If MyNumber is 0 then we're done
        If Val(MyNumber) = 0 Then Exit Function
    
        ' Convert MyNumber to hopper
        DecimalPlace = InStr(MyNumber, ".")
        If DecimalPlace > 0 Then
            Temp = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2))
            MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
        End If
    
        Count = 1
        Do While MyNumber <> ""
            Temp = GetHundreds(Right(MyNumber, 3))
            If Temp <> "" Then OutF = Temp & Place(Count) & OutF
            If Len(MyNumber) > 3 Then
                MyNumber = Left(MyNumber, Len(MyNumber) - 3)
            Else
                MyNumber = ""
            End If
            Count = Count + 1
        Loop
    
        Select Case DecimalPlace
            Case 0
                ConvNumToWordsWithCents = " Dollar " & OutF & "Only"
            Case 1
                ConvNumToWordsWithCents = " Dollar " & OutF & "and " & GetTens(Left(Mid(MyNumber & "00", 2), 2)) & " Cents Only"
            Case 2
                ConvNumToWordsWithCents = " Dollar " & OutF & GetTens(Left(Mid(MyNumber & "00", 2), 2)) & " Cents Only"
        End Select
    End Function
    
    &#39; Converts a number from 100-999 into text
    Function GetHundreds(ByVal MyNumber)
        Dim Result As String
        If Val(MyNumber) = 0 Then Exit Function
        MyNumber = Right("000" & MyNumber, 3)
        &#39; Convert the hundreds place.
        If Mid(MyNumber, 1, 1) <> "0" Then
            Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
        End If
        &#39; Convert the tens and ones place.
        If Mid(MyNumber, 2, 1) <> "0" Then
            Result = Result & GetTens(Mid(MyNumber, 2))
        Else
            Result = Result & GetDigit(Mid(MyNumber, 3))
        End If
        GetHundreds = Result
    End Function
    
    &#39; Converts a number from 10 to 99 into text.
    Function GetTens(TensText)
        Dim Result As String
        Result = ""           &#39; Null out the temporary function value.
        If Val(Left(TensText, 1)) = 1 Then   &#39; If value between 10-19...
            Select Case Val(TensText)
                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                                 &#39; If value between 20-99...
            Select Case Val(Left(TensText, 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
            Result = Result & GetDigit _
                (Right(TensText, 1))   &#39; Retrieve ones place.
        End If
        GetTens = Result
    End Function
    
    &#39; Converts a number from 1 to 9 into text.
    Function GetDigit(Digit)
        Select Case Val(Digit)
            Case 1: GetDigit = "One"
            Case 2: GetDigit = "Two"
            Case 3: GetDigit = "Three"
            Case 4: GetDigit = "Four"
            Case 5: GetDigit = "Five"
            Case 6: GetDigit = "Six"
            Case 7: GetDigit = "Seven"
            Case 8: GetDigit = "Eight"
            Case 9: GetDigit = "Nine"
            Case Else: GetDigit = ""
        End Select
    End Function
  5. ##5.

    Close the VBA editor: Close the VBA editor and return to Excel.

  6. 6.

    Use a custom function: Use a custom function in Excel ConvertToWordsWithCents, for example:

    =ConvertToWordsWithCents(A1)

The above code will convert the number into uppercase form with rounded corners.

2. Teach you how to make Excel macros?

You can make Excel macros by following the following steps:

  1. 1.

    Open Excel: Open the workbook that contains the macro you want to create.

  2. 2.

    Open the VBA editor: Press Alt F11 to open the VBA editor.

  3. 3.

    Insert a new module: In the VBA editor, right-click any item in the project browser on the left and select "Insert" > "Module ” to insert a new VBA module.

  4. 4.

    Write macro code: Write VBA code in a new module. This can include operations on cells, data processing, chart generation, etc.

    Sub MyMacro()
        &#39; Your VBA code here
        Range("A1").Value = "Hello, World!"
    End Sub

  5. 5.

    Save Macro: In the VBA editor, click "File" > "Save As", select the file type as "Excel Macro Enabled Work Book (*.xlsm)" and save it.

  6. 6.

    Run macro: In Excel, press Alt F8 to open the macro dialog box, select your macro and click "Run" ".

Summary:

For converting numbers to uppercase with rounded corners, you can write a custom function using VBA, and Called in Excel. The steps to create an Excel macro include opening the VBA editor, inserting a new module, writing macro code, saving the macro, and running the macro. This enables custom functionality and automation.

Create a detailed macro with rounded corners in Excel to convert numbers into uppercase

The above is the detailed content of Create a detailed macro with rounded corners in Excel to convert numbers into uppercase. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:docexcel.net. If there is any infringement, please contact admin@php.cn delete