Página 1 de 1

Executar Função ao Apertar Tecla

Enviado: 14 Jul 2020 às 19:52
por pennapfelipe
Caros amigos, peço ajuda mais uma vez

Preciso de um código que rode dentro de uma determina planilha e faça o seguinte:
Toda vez que o usuário alcançar a coluna 18 e apertar a tecla delete, o Excel não irá rodar ClearContents, mas sim irá retornar o valor da Cells(Target.Row, 13)

É possível fazer isso?

Obrigado

Re: Executar Função ao Apertar Tecla

Enviado: 15 Jul 2020 às 06:41
por babdallas
Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 18 And Target.Value = vbNullString Then
        Target.Value = Planilha1.Cells(Target.Row, 13).Value
    End If
End Sub

Executar Função ao Apertar Tecla

Enviado: 15 Jul 2020 às 06:52
por AfonsoMira
Boas veja se atende ao seu pedido.

:D

Re: Executar Função ao Apertar Tecla

Enviado: 15 Jul 2020 às 08:33
por pennapfelipe
Caros babdallas e AfonsoMira

Muito obrigado, código funcionou perfeitamente.

babdallas, me permita esclarecer uma dúvida:
Qual a explicação para que o vbNullString seja vinculado ao botão DELETE?

Re: Executar Função ao Apertar Tecla

Enviado: 15 Jul 2020 às 10:15
por jhonesWillian
Ei amigo pode ver, não conseguir colocar abaixo desse site https://imoble.com.br/cidade/aguas-claras/ pode ser direto com a conexão no PHP? :cry:

Re: Executar Função ao Apertar Tecla

Enviado: 15 Jul 2020 às 10:52
por babdallas
vbNullString é uma constante da biblioteca do VBA que representa vazio. Logo, se o usuário pressionar Delete, o evento Change será acionado. Então verifico se a célula modificada é da coluna 18 e se está vazia (porque o Delete foi pressionado). Se sim, atribui o valor da célula da coluna 13.

Executar Função ao Apertar Tecla

Enviado: 15 Jul 2020 às 15:47
por pennapfelipe
Ok, babdallas. Muito obrigado.