Ir ao conteúdo
  • Cadastre-se

Vba Macro Localizar NÃo Executa!!!


Posts recomendados

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:

Link para o comentário
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

Link para o comentário
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

Link para o comentário
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."

Link para o comentário
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:

Link para o comentário
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

Link para o comentário
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

Link para o comentário
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

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...