Anyone who has made a pivot table and their grandma knows that formatting them is a pain. Let’s recap the steps to apply one of the most common formats – currency format.
- Right click on any value field
- Go to Value field settings
- Click on “Number Format” button
- Choose Currency format
- Close the boxes, one after another
Unless you get paid per click, you wont be happy with all those clicks.
Wouldn’t it be cool to just click once and apply most common format to your pivot fields?
Of course you can. Just add oneClickCurrency macro to your personal macros workbook. And then add this to your Home ribbon as a custom button and you have a one click format option for any pivot.
oneClickCurrency Macro
So are you ready for the code? Its so tiny, you could type it faster than manually formatting the pivot fields yourself 😉
Sub oneClickCurrency()
On Error GoTo GameOver
Dim pName As String, pfName As String
pName = ActiveCell.PivotTable.Name
pfName = ActiveCell.PivotField.Name
With ActiveSheet.PivotTables(pName).PivotFields(pfName)
.NumberFormat = "$#,##0.00"
End With
GameOver:
End Sub
When copy pasting this code to your personal macros workbook, change the $#,##0.00 format code to any other formatting you want to use. Here are a few more common ones.
- Accounting format (negative values in brackets, no zeros): _($* #,##0.00_);_($* (#,##0.00);_($* “”-“”??_);_(@_)
- Negative amounts in red color: $#,##0.00;[Red]$#,##0.00
- Amounts with no decimals: $#,##0
So there you go. I just save you from a massive tax. Click tax that is.
George Costanzaesque macros for you
Short & fun, that is how I like my macros. Here are a few you should add to your personal macros workbook to save time & get more out of Excel.
- Filter a table by selected criteria
- Add a popup calendar to any cell
- Highlight selected cell’s row & column
- Split text to multiple cells
- More VBA Examples
How do you format your pivots?
For most of my work, I rely on Power Pivot, which allows you to set up format options when defining a measure. But whenever I use pivots, I end up paying click tax for the formatting. Hence the macro.
What about you? How do you format your pivots? You can customize the above macro to include additional steps that you often do (changing layouts etc.) Please share your techniques & thoughts in the comments section.
4 Responses to “Currency format Pivot fields with one click [Friday VBA]”
As in your example, I often find myselve having to format numbers as kU, MU,%, or increase/decrease decimals. In the PowerPivot utilities add-in, I have included several such formatting macros and made them available from the pivot table contextual menus. Thanks for you post. It reminds me that formatting as currency is *currently* missing.
The add-in is free and the vba code open.
https://www.sqlbi.com/tools/power-pivot-utilities/
I almost never format my pivot tables. I only format my final chart/table or whatever.
And when I do format them, I go the long distance. Keeps my clicking ability in shape. 🙂
I'm with GraH
I rarely if ever format PT's
Just hover your pointer on field header, it turns into down arrow then click. Entire pivot field gets selected then click on currency($) symbol from home ribbon or Press Ctrl + $(Ctrl + Shift + 4).