Sometimes we want to copy cell format to others to make cells or tables in unique format. We can check the cell format and then set the same format for the cells you want to apply the formatting, but this way is very complex and boring. We need some way simple and convenient to apply. This article will provide you two methods to suit your requirement. The first one is using Format Painter, the second one is Excel VBA, it can automate copy cell format to others.
For example, we have a table formatting as below:
This table is combined with 3 rows and 3 columns, it has bold borders and different colors of background. If we want to create a table with this format or make existing table copy this format, we can use format painter, please see details below.
Table of Contents
1. Copy Cell Formatting by Format Painter in Excel
Step 1: Drag and select the range B2:D5 you want to copy the formatting.
Step 2: Click Home->Format Painter in ribbon.
Verify that the selected range is highlighted. And cursor is changed to a painter.
Step 3: Drag and select the range you want to apply with the formatting. For example, F2:H5.
Step 4: Release your mouse. Verify that a table with the same format is created.
Step 5: If table is already created with values but the format is not applied, after copy cell formatting by format painter, the table will be applied with formatting properly.
Before: After:
2. Copy Cell Formatting by Excel VBA
Below method is applied for copy cell with only formatting to another range on current sheet or another sheet.
Step 1: Right click on Sheet1 to load Sheet management menu. Select View Code, Microsoft Visual Basic for Applications window pops up.
Or you can enter Microsoft Visual Basic for Applications window via Developer->Visual Basic.
Step 2: In Microsoft Visual Basic for Applications window, click Insert->Module, enter below code in Module1:
Sub CopyCellFormating()
Dim CopyRng As Range, PasteRng As Range
xTitleId = "CopyCellFormating"
Set CopyRng = Application.Selection
Set CopyRng = Application.InputBox("Source:", xTitleId, CopyRng.Address, Type:=8)
Set PasteRng = Application.InputBox("Destination:", xTitleId, Type:=8)
CopyRng.Copy
PasteRng.Parent.Activate
PasteRng.PasteSpecial xlPasteFormats
Application.CutCopyMode = False
End Sub
Step 3: Save the codes, see screenshot below. And then quit Microsoft Visual Basic for Applications.
Step 4: On current sheet1, click Developer->Macro, in Macro window, select CopyCellFormatting Macro, then click Run.
Step 5: CopyCellFormat input box pops up. In Source textbox, enter the range you want to copy cell formatting with. Then click OK.
Step 6: In Destination textbox, enter the range you want to apply the formatting with. Then click OK.
Step 7: Verify that F8:H11 are applied with the formatting.
Step 8: You can also run macro on another sheet like sheet2 to copy and apply cell formatting on sheet2, just add sheet1 when enter source range.
Below method is applied for copy cell with both value and formatting to another worksheet.
Step 1: Right click on Sheet1 to load Sheet management menu. Select View Code, Microsoft Visual Basic for Applications window pops up.
Or you can enter Microsoft Visual Basic for Applications window via Developer->Visual Basic.
Step 2: In Microsoft Visual Basic for Applications window, click Insert->Module, enter below code in Module1:
Sub CopyCellValuesAndFormatting()
Sheets("Sheet1").Range("B2:D5").Copy Destination:=Sheets("Sheet2").Range("B2:D5")
End Sub
Step 3: Save the codes, see screenshot below. And then quit Microsoft Visual Basic for Applications.
Step 4: On sheet2, click Developer->Macro, in Macro window, select CopyCellValuesAndFormatting Macro, then click Run.
Step 5: Verify that table in sheet1 with values and formatting is copied to B2:D5 automatically in sheet2. You can clear the values in cells and re-enter your own data.
3. Video: Copy Cell Formatting to Another Range
This Excel video tutorial, we’re going to explore how to copy cell formatting from one range to another. Whether you’re working on the same worksheet or need to apply formatting across different sheets, we have two efficient methods for you: using the Format Painter tool and writing a VBA macro.