Tip: Other languages are Google-Translated. You can visit the English version of this link.
Log in


How to format a textbox as a percentage in Excel?

In the previous article, we have discussed a VBA method of formatting number in a textbox as currency in Excel. Here in this article, we are going to talk about formatting number in a textbox as a percentage in Excel with VBA method as well.

Format a textbox as percentage with VBA code

Format a textbox as percentage with VBA code

Please do as follows to format a textbox as a percentage with VBA code.

1. Click Developer > Insert > Text Box (ActiveX Control) to insert a textbox into worksheet. See screenshot:

2. Right-click the textbox, then click View Code from the context menu.

3. In the opening Microsoft Visual Basic for Applications window, please replace the original code in the Code window with below VBA code.

VBA code: format a textbox as percentage in Excel

Private Sub TextBox1_LostFocus()
    Dim xReg As New RegExp
    Dim xMatches As MatchCollection
    Dim xMatch As Match
    Dim xText As String
    Dim xReplace As String
    On Error Resume Next
    Application.ScreenUpdating = False
    xText = Me.TextBox1.Text
    xText = Replace(xText, "%", "")
    With xReg
        .Global = True
        .Pattern = "([^0-9]+\d+)|(\d{1,})"
        Set xMatches = .Execute(xText)
        For Each xMatch In xMatches
            xReplace = xReplace & xMatch.Value & "%"
    End With
    xText = xReplace & Mid(xText, Len(xReplace) - xMatches.Count + 1)
    Me.TextBox1.Text = xText
    Application.ScreenUpdating = True
End Sub

Note: Please change TextBox1 to the textbox name based on your need.

4. Click Tools > References. Then check the Microsoft VBScript Regular Expressions box in the References – VBAProject dialog box, and click the OK button. See screenshot:

5. Press the Alt + Q keys to exit the Microsoft Visual Basic for Applications window.

6. When it returns to the worksheet, please click Developer > Design Mode again to turn off the Design Mode.

From now on, when entering numbers into the textbox and shift the cursor out the textbox to click any cell, these numbers will be formatted as percentage automatically.

Related articles:

Recommended Productivity Tools

Office Tab

gold star1 Bring handy tabs to Excel and other Office software, just like Chrome, Firefox and new Internet Explorer.

Kutools for Excel

gold star1 Amazing! Increase your productivity in 5 minutes. Don't need any special skills, save two hours every day!

gold star1 200 New Features for Excel, Make Excel Much Easy and Powerful:

  • Merge Cell/Rows/Columns without Losing Data.
  • Combine and Consolidate Multiple Sheets and Workbooks.
  • Compare Ranges, Copy Multiple Ranges, Convert Text to Date, Unit and Currency Conversion.
  • Count by Colors, Paging Subtotals, Advanced Sort and Super Filter,
  • More Select/Insert/Delete/Text/Format/Link/Comment/Workbooks/Worksheets Tools...

Screen shot of Kutools for Excel

btn read more      btn download     btn purchase

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.