Please Note: This article is written for users of the following Microsoft Excel versions: 2007, 2010, 2013, 2016, 2019, and Excel in Microsoft 365. If you are using an earlier version (Excel 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Excel, click here: Clearing Everything Except Formulas.
Written by Allen Wyatt (last updated July 27, 2023)
This tip applies to Excel 2007, 2010, 2013, 2016, 2019, and Excel in Microsoft 365
Roni wants to clear everything in a worksheet except for cells which may contain formulas. This task can be completed either manually or through the use of a macro.
If you want to do the clearing manually, you can follow these steps:
Figure 1. The Go To dialog box.
Figure 2. The Go To Special dialog box.
This works great if you only need to clear out the non-formula contents of a worksheet once in a while. If you need to do it more often, then you can simply use the macro recorder to record the above steps. Or, if you prefer, you can create your own macro from scratch, such as the following one:
Sub ClearAllButFormulas() Dim wks As Worksheet 'ignore errors in case there is only formulas On Error Resume Next For Each wks In Worksheets wks.Cells.SpecialCells(xlCellTypeConstants).ClearContents Next On Error GoTo 0 Set wks = Nothing End Sub
This macro is particularly useful if you need to clear out all the non-formula cells in an entire workbook. The reason is because it does the clearing on every worksheet in the entire workbook, without you needing to do the clearing manually.
You should use caution when using this macro. Make sure you really do want to clear out everything except for cells that contain formulas in the worksheet or workbook before you run this macro. It would be a shame to accidentally get rid of the contents of cells that you really needed to keep. If you are a bit squeamish about such a possibility, you might want to use the following version of the macro:
Sub ClearAllButFormulas2() Dim wks As Worksheet Dim sTemp As String Dim iCheck As Integer sTemp = "This macro deletes everything in the current " sTemp = sTemp & "workbook except formulas. Once done, " sTemp = sTemp & "it cannot be undone." & vbCrLf & vbCrLf sTemp = sTemp & "Are you sure you want to continue?" iCheck = MsgBox(sTemp, vbYesNo + vbExclamation, "Warning!") If iCheck = vbYes Then 'ignore errors in case there is only formulas On Error Resume Next For Each wks In Worksheets wks.Cells.SpecialCells(xlCellTypeConstants).ClearContents Next On Error GoTo 0 Else MsgBox "Operation cancelled." End If End Sub
This version displays a message box asking if you are sure you want to do the clearing. The upshot is that you have less of a chance of messing up your workbook by accident.
Note:
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (9097) applies to Microsoft Excel 2007, 2010, 2013, 2016, 2019, and Excel in Microsoft 365. You can find a version of this tip for the older menu interface of Excel here: Clearing Everything Except Formulas.
Save Time and Supercharge Excel! Automate virtually any routine task and save yourself hours, days, maybe even weeks. Then, learn how to make Excel do things you thought were simply impossible! Mastering advanced Excel macros has never been easier. Check out Excel 2010 VBA and Macros today!
When you import information originating in a different program, Excel may not do the best job at figuring out what ...
Discover MoreExcel allows you to easily paste information into a worksheet, including through simply dragging and dropping the ...
Discover MoreExcel includes several different methods of editing information in your cells. If you want to edit multiple cells all at ...
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
2022-01-23 18:43:48
John Mann
I like this tip, and I'm keeping a copy for future use. In the past, when I've had a similar situation, I've selected all cells (except those that are protected) and deleted the content. Since I've protected all cells except those in which I actually enter date (so formulae, titles, labels, etc are protected) I can then delete all the data. This has the advantage of not deleting useful stuff which isn't a formula.
2021-05-22 10:57:41
Prithvi
Thanks very much for the advice. found it very useful!
2020-11-04 09:05:28
R Raghavendran
Thank you for great tips.
2020-09-16 06:51:20
Murray Snudge
Excellent tip - thank you. I've created a workbook for my HMRC tax return and copy the workbook for following year so want to clear previous year data but keep formula. This tip is great!
Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2024 Sharon Parq Associates, Inc.
Comments