Ir ao conteúdo
  • Cadastre-se
Patricia Souza

Vba Macro Localizar NÃo Executa!!!

Recommended Posts

Ajudem me por favor, tenho uma planilha em excel com vários números de processos (sem sequência) e preciso usar a macro localizar para a usuaria digitar o número do processo e na célula da enter e localizar o número, só que a macro não esta funcionando:

Segue a macro que estou usando:

Sub Localizar

Cells.Find(What:=Range("A4"), After:=ActiveCell, LookIn:=xlValues, LookAt:= _

xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious, MatchCase:= _

False, SearchFormat:=False).Activate

End Sub

:confused:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para executar automaticamente você não pode por o código em um módulo, tem que por na Planilha desejada esse código:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address <> Range("A4").Address Then Exit Sub

Cells.Find(What:=Range("A4"), After:=ActiveCell, LookIn:=xlValues, LookAt:= _

xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _

False, SearchFormat:=False).Activate

End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

PRECISO DE OUTRA AJUDA !!!

Nessa mesma plnilha não consigo compartilhar a pasta de trabalho... isso acontece porque a macro esta na plan?

se for qual a solução?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Queria fazer uma coisa parecida.

Tentei fazer este precesso aqui no meu excel e não estou conseguindo fazer a macro funcionar. Poderiam me enviar um anexo( um exemplo ) para que eu possa ter ideia de como é feito isso?

Não sei praticamente nada de macro.

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Patrícia,

Não tenho muita experiência com compartilhamento de planilhas, mas acredito que a macro não seja limitante. Talvez se você estiver usando o excel 2007 se você quiser salvar uma macro tem que escolher uma extensão especial *.xlsm em vez de *.xlsx.

NEP:

O que você deve estar fazendo de errado é colocar o código em um módulo. Nos módulos você só consegue executar se for por meio de algum objeto ou por meio manual. Se você quer executar automaticamente você tem que por na planilha específica, dependendo do caso até mesmo na pasta de trabalho. Nesse caso é diretamente nos códigos da planilha.

Para fazer isso você tem que escolher a planilha (Plan1, Plan2, Plan3...) no project explorer. Ele fica no canto superior esquerdo com o nome "Projeto - VBAProject."

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dofall,

estou trabalhando com o Excel 2003. E o interessante é que tenho várias planilhas com macros nos módulos, só que chamando a planilha e assim roda.

Mas também possuo planilha que tem macro na plan que funciona compartilhada, só que esta planilha não me deixa compartilhar...

:huh:

Compartilhar este post


Link para o post
Compartilhar em outros sites
...

NEP:

O que você deve estar fazendo de errado é colocar o código em um módulo. Nos módulos você só consegue executar se for por meio de algum objeto ou por meio manual. Se você quer executar automaticamente você tem que por na planilha específica, dependendo do caso até mesmo na pasta de trabalho. Nesse caso é diretamente nos códigos da planilha.

Para fazer isso você tem que escolher a planilha (Plan1, Plan2, Plan3...) no project explorer. Ele fica no canto superior esquerdo com o nome "Projeto - VBAProject."

Tentei aqu novamente e está ocorrendo o seguinte problema (Vaja a imagem abaixo):

clubedohardwareav0.png

Quando eu dou OK fica assim:

cdohardtu3.png

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem, aqui funciona normalmente, uso o Excel 2007, mas tente tirar esse argumento que está dando erro, tenta isso:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address <> Range("A4").Address Then Exit Sub

Cells.Find(What:=Range("A4"), After:=ActiveCell.Cells(0, 1), LookIn:=xlValues, LookAt:= _

xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _

False).Activate

End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

As listas de validação também não impedem de compartilhar, mas uma vez compartilhado, não é possível mudar o local de referência da lista.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Bem, aqui funciona normalmente, uso o Excel 2007, mas tente tirar esse argumento que está dando erro, tenta isso:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address <> Range("A4").Address Then Exit Sub

Cells.Find(What:=Range("A4"), After:=ActiveCell.Cells(0, 1), LookIn:=xlValues, LookAt:= _

xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _

False).Activate

End Sub

Agora com não está dando o erro não... mas os que eu devo fazer para localizar um determinado número?

Será que não daria para você deixar uma anexo aqui? .... Eu sei pouco de macro e um anexo facilitaria muito.

OBS.: Uso o office2000

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×