How to restrict to paste values only (prevent formatting) in Excel?

Normally, we paste copied data with just pressing the Ctrl + V keys simultaneously. And that will paste the copied values along with all the cell formatting. If you just need to paste the values only and restrict the cell formatting, the following methods can help you.

Restrict to paste values only (prevent formatting) with paste values feature
Restrict to paste values only (prevent formatting) with VBA code
Restrict to paste values only with Kutools for Excel


Restrict to paste values only (prevent formatting) with paste values feature

An easy way to restrict to paste values only is pasting the copied data as values only in Excel.

1. After copying data, right click the destination cell you will paste the data into.

2. Then click the Values button under the Paste Options section in the right-clicking menu. See screenshot:

You can see only values of copied cells are pasted into the destination cells.


Restrict to paste values only (prevent formatting) with VBA code

The following VBA code helps you paste only values of copied cells, and restrict all cell formatting. Please do as follows.

1. Press Alt + F11 keys simultaneously to open the Microsoft Visual Basic for Applications window.

2. In the Microsoft Visual Basic for Applications window, double click the ThisWorkbook in the Project right pane to open the ThisWorkbook code window. Then copy and paste the below VBA code into the window.

VBA code: Restrict to paste values only in Excel

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    On Error Resume Next
    Target.PasteSpecial xlPasteValues
    Application.CutCopyMode = True
End Sub

3. Press the Alt + Q keys simultaneously to close the Microsoft Visual Basic for Applications window.

Now, copy your data, and go to the destination worksheet. Only one click or right click on the destination cell will paste the values of copied cells without any formatting immediately.


Restrict to paste values only with Kutools for Excel

Kutools for Excel’s Copy Ranges utility helps you to easily paste only values of a selected range or multiple selected ranges in Excel. Please do as follows.

Before applying Kutools for Excel, please download and install it firstly.

1. Select a range or multiple ranges with holding the Ctrl key, then click Kutools > Copy Ranges

2. In the Copy Multiple Ranges dialog box, only select the Values option in the Paste special section, and then click the OK button.

Note: You can check both or one of the Including row height and the Including column width options as you need.

3. In the next Copy Multiple Ranges dialog box, select a blank cell for pasting the copied cells, and then click the OK button.

Then only values of all selected cells in a range or multiple ranges are pasted.

  If you want to have a free trial ( 30-day) of this utility, please click to download it, and then go to apply the operation according above steps.


Related articles:


The Best Office Productivity Tools

Kutools for Excel Solves Most of Your Problems, and Increases Your Productivity by 80%

  • Reuse: Quickly insert complex formulas, charts and anything that you have used before; Encrypt Cells with password; Create Mailing List and send emails...
  • Super Formula Bar (easily edit multiple lines of text and formula); Reading Layout (easily read and edit large numbers of cells); Paste to Filtered Range...
  • Merge Cells/Rows/Columns without losing Data; Split Cells Content; Combine Duplicate Rows/Columns... Prevent Duplicate Cells; Compare Ranges...
  • Select Duplicate or Unique Rows; Select Blank Rows (all cells are empty); Super Find and Fuzzy Find in Many Workbooks; Random Select...
  • Exact Copy Multiple Cells without changing formula reference; Auto Create References to Multiple Sheets; Insert Bullets, Check Boxes and more...
  • Extract Text, Add Text, Remove by Position, Remove Space; Create and Print Paging Subtotals; Convert Between Cells Content and Comments...
  • Super Filter (save and apply filter schemes to other sheets); Advanced Sort by month/week/day, frequency and more; Special Filter by bold, italic...
  • Combine Workbooks and WorkSheets; Merge Tables based on key columns; Split Data into Multiple Sheets; Batch Convert xls, xlsx and PDF...
  • More than 300 powerful features. Supports Office/Excel 2007-2019 and 365. Supports all languages. Easy deploying in your enterprise or organization. Full features 30-day free trial. 60-day money back guarantee.
kte tab 201905

Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier

  • Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
  • Open and create multiple documents in new tabs of the same window, rather than in new windows.
  • Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
officetab bottom
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.
  • To post as a guest, your comment is unpublished.
    Hei-KO · 7 months ago
    Hallo,
    ich habe eine Excel-Datei (100 Tabellenregister) für die ich eine Formel gesucht habe, die es erlaubt, beim Kopieren nur Werte einfügen, möglich zu machen.

    Ausschneiden+Drag&Drop habe ich bereits per Makro ausgeschaltet. Ich habe jetzt im Netz folgenden Code gefunden, den ich in
    "Diese Arbeitsmappe" geschrieben habe:

    Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    On Error Resume Next
    Target.PasteSpecial xlPasteValues
    Application.CutCopyMode = True
    End Sub

    (Der Code verursacht, dass ich nach kopieren, den Inhalt sofort als Wert in eine angeklickte Zelle kopiert bekomme)
    Das funktioniert sehr gut, jedoch habe ich noch ein Problem dabei:

    Wenn ich Werte aus einer Zelle kopiere, kann ich diese auch in geschützte
    Zellen kopieren und das soll nicht sein. In vielen geschützten Zellen stehen Formeln die nicht überschrieben werden sollen.

    Kann mir jemand helfen, wie ich den Code erweitern oder ändern kann, dass er es nur erlaubt in nicht geschützte Zellen zu kopieren?

    Gruß Heiko
  • To post as a guest, your comment is unpublished.
    syazahisham91@gmail.com · 1 years ago
    Hi! for Kutools 'Copy Ranges', I realized there is limit on number of columns that can be copy at a time. I am working with 7,500 columns. I select 7,500 columns as the range, but it can only copy and paste partial of what I had selected, not all. I am planning to copy all these columns in one go and paste. Is there any way I can do that ? just to speed things up. Any help would highly be appreciated. Thanks!
  • To post as a guest, your comment is unpublished.
    Dean · 1 years ago
    Hi, is there code for working with ctrl+v. This code paste automatically when selecting cell. I found module code below link but couldn't find code for workbook like this.
    https://www.extendoffice.com/documents/excel/2545-excel-set-paste-values-as-default.html
    • To post as a guest, your comment is unpublished.
      Adriana · 1 years ago
      It's sad no one answers. I need this information too.
  • To post as a guest, your comment is unpublished.
    Travis · 1 years ago
    This code was great, but it was pasting items in the system clipboard that were copied from other programs. I put it in an 'If' statement which does nothing, unless Excel cells are actually in Cut or Copy mode. i.e. moving border around the cell(s).

    Application.CutCopyMode has three modes: False = Not in Cut or Copy mode. | xlCopy = In Copy mode. | xlCut = In Cut mode.

    'If in Cut or Copy mode, Paste Values Only
    'If Not in Cut or Copy mode, skip and do nothing.

    On Error Resume Next
    If Not Application.CutCopyMode = False Then
    Target.PasteSpecial xlPasteValues
    Application.CutCopyMode = True
    End If

    This was a bit of a bugger for me to figure out. Hope it helps someone else.
    -Travis (IT Professional since 1996)
    • To post as a guest, your comment is unpublished.
      Nikki · 1 days ago
      This addition was a great help! Thank you so much for posting!
    • To post as a guest, your comment is unpublished.
      Gav · 1 years ago
      Hi Travis, Thank you very much for posting this.
      I never respond to posts but i appreciate you posting this answer.
  • To post as a guest, your comment is unpublished.
    Me · 1 years ago
    Thank you so much!! It works well and its so useful for the project that I am working on.
  • To post as a guest, your comment is unpublished.
    Bram Verschoren · 2 years ago
    This works for me:

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    On Error Resume Next
    Target.PasteSpecial xlPasteValues
    Application.CutCopyMode = True
    End Sub
  • To post as a guest, your comment is unpublished.
    Wishmaster · 2 years ago
    Would this work on Worksheet level only? I am trying to restrict this only on one worksheet (not entire workbook), but it seems there is a problem.