Permitir Colar Apenas Valores Excel

Como permitir colar apenas valores no Excel. Veja passo-a-passo como bloquear para que sejam colados apenas valores no Excel manualmente ou ainda com VBA.

Como copiar e colar somente valor no Excel

Ao copiar e colar células no Excel ele sempre irá colar todas as informações que você tem se simplesmente você usar o CTRL+C e CTRL+V ou botão direito Copiar e botão direito colar.

Acontece que ao realizar isto você estará colando não só o conteúdo de texto da célula, mas também as cores da fonte, do fundo da célula, as linhas de grade, a formatação condicional e a validação de dados.

E isto faz com que ao colar os dados diretamente estas formatações todas sejam perdidas.

Para colar somente valores manualmente no Excel você deve copiar os dados normalmente, e depois selecionar aonde deseja colar os dados.

Clique com o botão direito sobre a primeira célula da região para colar e selecione as opções Colar Especial…->Valores ou senão botão direito e no botão Valores diretamente, coinforme abaixo.

Outra forma é usar os atalhos.

Pode usar o botão de menu no teclado e pressionar V que é o atalho direto desta opção.

Pressionar este botão e V para colar valores

Como Bloquear para Colar Somente Valores Automaticamente no Excel com VBA

Veja que no processo anterior nós temos um problema, se você esquecer de colar como valores ou passar para alguém manipular a planilha, eventualmente poderá ocorrer erros de colar diretamente, sem obedecer a questão dos valores.

Pensando nisso criamos o código abaixo que realiza o colar valores sempre que for colado qualquer célula na planilha.

Ou seja, ao pressionar CTRL+V, ele sempre irá colar valores na sua planilha.

Para isso, inicialmente defina a planilha aonde você quer que sejam recebidos apenas valores ao colar.

Em seguida habilite as macros, se não estiver habilitado, siga este artigo: Como habilitar macros no Excel é bem rápido.

Agora siga os seguintes passos:

  1. Clique em Desenvolvedor->Visual Basic ou pressione as teclas de atalho Alt+F11
  2. Na árvore de objetos clique duas vezes sobre a planilha que deseja apenas colar valores
  3. Na área ao lado da planilha coloque o seguinte código fonte.
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo Sair
    
    Application.ScreenUpdating = False
    Application.EnableEvents = False
    
    If Application.CutCopyMode = xlCopy Then
        Application.Undo
        
        Target.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, _
                            SkipBlanks:=False, Transpose:=False
    End If
    
Sair:
    Application.ScreenUpdating = True
    Application.EnableEvents = True
    Application.CutCopyMode = False
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    On Error GoTo Sair
    
    If Application.CutCopyMode = xlCut Then
        Application.EnableEvents = False
        MsgBox "Por favor não recorte dados nesta planilha"
        Application.CutCopyMode = False
    End If
    
Sair:
    Application.EnableEvents = True
End Sub

Veja como fica na imagem abaixo.

O primeiro código em Private Sub Worksheet_Change(ByVal Target As Range) verifica se está sendo alterada a planilha.

E se estiver sendo alterado o valor da planilha ele verifica se é está sendo alterado pelo método de colar valores, verificando se o status de CutCopyMode é igual a xlCopy.

Se for ele cancela a operação com Application.Undo e em seguida usa o colar especial valores com Target.PasteSpecial e passando o parâmetro de Paste como xlPasteValues.

O resultado é então que ao colar na planilha as alterações são desfeitas e coladas em seguida como valores.

E no procedimento Worksheet_SelectionChange é verificado se está sendo mudada a célula na planilha e se ao mudar de célula está no método de recortar (xlCut)

Isto é feito porque ao recortar dados no Excel ele não fica com o status nenhum em Application.CutCopyMode e é necessário no momento em que está realizando a operação de recortar que seja avisado que não pode ser recortado e colado dados na planilha.

Então é cancelado pela operação Application.CutCopyMode = False.

Pronto!

Caso queira aplicar em outras planilhas o processo é o mesmo, basta copiar este código, basta copiar o código acima no artigo ou então do download da planilha em anexo.

Inclusive pode testar como ficou a solução com a planilha no download.

Observação: Funciona também para tabelas, no entanto, ela não permite que sejam redimensionadas tabelas, então é necessário que já deixe as linhas adicionadas na tabela para o cliente apenas inserir as informações na tabela.

Download da Planilha Colar Apenas Valor no Excel

Realize o download da planilha deste artigo no botão abaixo. Basta se inscrever na nossa newsletter gratuita para o download automático.

Baixe a planilha
Avalie este post
Sair da versão mobile