To post as a guest, your comment is unpublished.· 5 months agoHi David,
Which Excel version are you using? I have tried the code, entire rows and columns in the specified range can't be deleted after applying the code.
How to prevent specific cell contents from being deleted in Excel?
This article is talking about preventing specific cell contents from being deleted in Excel. You can achieve it with the methods in this article.
By default, all cells in worksheet are locked. If you want to prevent specific cell contents from being deleted, and make other cells editable after protecting, please do as follows.
1. Click the button on the top left corner of worksheet to select the whole worksheet. Then press Ctrl + 1 keys to open the Format Cells dialog box.
2. In the popping up Format Cells dialog box, uncheck the Locked option under the Protection tab, and then click the OK button. See screenshot:
3. Select the cells you don’t want the contents to be deleted, press Ctrl + 1 keys to open the Format Cells dialog box again, check the Locked option under the Protection tab, and then click the OK button.
4. Now click Review > Protect Sheet, then specify and confirm your password in both the Protect Sheet and Confirm Password dialog boxes.
Now the worksheet is protected. And the specified cell contents won’t be deleted any more.
Besides the above two methods, you can run VBA code to prevent specific cell contents from being deleted in a worksheet. Please do as follows.
1. Open the worksheet which contains the cell contents you don’t want to be deleted, right click the Sheet Tab, and then click View Code from the right-clicking menu.
2. Copy and paste the below VBA code into the Code window of the Microsoft Visual Basic for Applications window.
VBA code: Prevent specific cell contents from being deleted in Excel
Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("A1:E7")) Is Nothing Then Exit Sub On Error GoTo ExitPoint Application.EnableEvents = False If Not IsDate(Target(1)) Then Application.Undo MsgBox " You can't delete cell contents from this range " _ , vbCritical, "Kutools for Excel" End If ExitPoint: Application.EnableEvents = True End Sub
Note: In the code, A1:E17 is the range which the cell contents you will prevent from being deleted. You can change the range based on your needs.
From now on, when you trying to delete cell contents from range A1:E17, you will get a Kutools for Excel dialog box as below screenshot shown, please click the OK button.
- How to prevent a certain worksheet from being deleted in Excel?
- How to prevent selection of multiple worksheets in Excel?
You are guest
or post as a guest, but your post won't be published automatically.
To post as a guest, your comment is unpublished.· 5 months agoHello, this code works well, however deleting row/collumn will bypass it. Is there any workaround to this? Cheers, David.
To post as a guest, your comment is unpublished.· 7 months ago"Prevent specific cell contents from being deleted by protecting the worksheet"I did as per your guideline, still cell information could be deleted i.e. protection does not work. Any solution.
To post as a guest, your comment is unpublished.· 6 months agoHi Ahsan,
Did you apply the VBA method?
You need to add the VBA to the worksheet code window. Supposing the cell contents you want to protect are in Sheet9, please right click the sheet tab and select View Code from the context menu, and then directly copy the code into the code window as the below image shown.
To post as a guest, your comment is unpublished.· 2 years agoVBA Code - Great Tip thanks
Is there a VBA code to Prevent specific cell contents from being modified AND deleted in Excel?
Usual protecting sheet does not work for me as I lose the ability to sort data?
Thanks in advance - Neil
To post as a guest, your comment is unpublished.· 2 years agoIf you don't wan to look your sheet or write VBA code, then I use a simple technique that prevents from any override except for when they use the "DELETE" key (backspace won't be allowed, but Delete is hard to stop). What I did is added a data validation with the following settings:
1) Allow --> List
2) uncheck "Ignore blank" and "in-cell dropdown"
3) In the source enter two double quotes (i.e., "")
4) In Error Alert tab, check "Show error alter after invalid data is entered", select "Stop" for style, then enter an error message and description (e.g., Don't override)
To post as a guest, your comment is unpublished.· 2 years agoHi,
Thanks for sharing.
To post as a guest, your comment is unpublished.· 2 years agoHi there,
I just tried the VBA script and while it works really well in most situations. However it doesn't work when you tab from an editable cell into the non-editable column/cell. The problem arises in that it throws the error message up - as commanded - but it doesn't keep the data that was entered in the original, editable cell which was tabbed from.
Would you have an amendment to the script so that it accepts the data in the editable cell when you tab into un-editable?
To post as a guest, your comment is unpublished.· 2 years agoGood day,
I tried as you mentioned in your case, but no error throws. Would you provide a screenshot of your case or tell me your Office version?
Thanks for your comment.
To post as a guest, your comment is unpublished.· 4 years agoJust what I was looking for, thanks for the help!
To post as a guest, your comment is unpublished.· 3 years agodon't worry always here to help :)