Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
#60464
Pessoal, eu inseri uma macro que bloqueia a ação de copiar e colar dentro da planilha e eu precisaria de uma outra macro que desfizesse esse efeito. Eu não tenho conhecimento em VBA e eu encontrei essa macro de bloqueio na internet. Eles também deixaram liberada uma macro que desfaz o bloqueio, porém quando eu aplico essa macro de desbloqueio no lugar da anterior, ela não está funcionando.

Segue a macro de bloqueio:

Private Sub Workbook_Activate()
Dim oCtrl As Office.CommandBarControl

Application.OnKey "^{c}", "" 'Desativa o Copiar pelo teclado
Application.OnKey "^{v}", "" 'Desativa o Colar pelo teclado
Application.OnKey "^{x}", "" 'Desativa o Recortar pelo teclado

'Desabilita todos os comandos de Recortar
For Each oCtrl In Application.CommandBars.FindControls(ID:=21)
oCtrl.Enabled = True
Next oCtrl

'Desabilita todos os comandos de Copiar
For Each oCtrl In Application.CommandBars.FindControls(ID:=19)
oCtrl.Enabled = True
Next oCtrl

'Desabilita o colar especial
For Each oCtrl In Application.CommandBars.FindControls(ID:=21437)
oCtrl.Enabled = True
Next oCtrl

Application.CellDragAndDrop = True

End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

With Application
.CellDragAndDrop = True
.CutCopyMode = False 'limpa a área de transferência
End With

End Sub

E a macro de desbloqueio:

Private Sub Workbook_Activate()
Dim oCtrl As Office.CommandBarControl

Application.OnKey "^{c}", "" 'Desativa o Copiar pelo teclado
Application.OnKey "^{v}", "" 'Desativa o Colar pelo teclado
Application.OnKey "^{x}", "" 'Desativa o Recortar pelo teclado

'Desabilita todos os comandos de Recortar
For Each oCtrl In Application.CommandBars.FindControls(ID:=21)
oCtrl.Enabled = True
Next oCtrl

'Desabilita todos os comandos de Copiar
For Each oCtrl In Application.CommandBars.FindControls(ID:=19)
oCtrl.Enabled = True
Next oCtrl

'Desabilita o colar especial
For Each oCtrl In Application.CommandBars.FindControls(ID:=21437)
oCtrl.Enabled = True
Next oCtrl

Application.CellDragAndDrop = True

End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

With Application
.CellDragAndDrop = True
.CutCopyMode = True 'limpa a área de transferência
End With

End Sub


Agradeço muito se alguem conseguir uma solução. Vou deixar a planilha em anexo e a senha para acessar o VBA é "131077". Eu deixei a planilha salva com a macro de bloqueio atuando.
#60520
Experimente assim.

macro de desbloqueio:

Sub desbloqueia()

Application.OnKey "^{c}"
Application.OnKey "^{v}"
Application.OnKey "^{x}"

End Sub
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord