LOCALIZAR (CNTRL + L) VIA MACRO
Enviado: 05 Jun 2019 às 15:42
Olá, pessoal!
Estou trabalhando numa tabela que me trás alguns dados via PROCV, a partir de um número de cadastro que eu digito. Até aqui ok.
Agora, eu preciso atualizar, modificar essas informações e colar de volta, sobrescrever na mesma linha de onde elas saíram, lá na base dedados. Para isso eu pensei no que seria o mais óbvio, o comando CNTRL+L. E assim, comecei a gravar a macro, mas aqui começa o problema. Eu explico.
O número que eu quero procurar , por exemplo "2", fica na célula F3, mas na macro ele aparece como WHAT:="2":
Range("F3").Select
Selection.Copy
Sheets("Tabela").Select
Columns("A:A").Select
Selection.Find(What:="2", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
O problema é que no campo onde está 2, poderia ser qualquer número, então preciso que a macro pegue o valor que está na célula naquele momento e não "2", apenas. No fim, se eu digitar "5", ela tem que achar em qual célula daquela coluna (no caso, a coluna "A") está o número "5" (convém dizer: os números não se repetem) e parar ali.
Tem jeito de trocar esse "what:=" por outra coisa coisa, quem sabe uma caixa de texto de onde a macro pudesse copiar o valor?
Espero ter sido claro o suficiente, mas qualquer coisa estou por aqui.
Desde já, obrigado a todos!
Estou trabalhando numa tabela que me trás alguns dados via PROCV, a partir de um número de cadastro que eu digito. Até aqui ok.
Agora, eu preciso atualizar, modificar essas informações e colar de volta, sobrescrever na mesma linha de onde elas saíram, lá na base dedados. Para isso eu pensei no que seria o mais óbvio, o comando CNTRL+L. E assim, comecei a gravar a macro, mas aqui começa o problema. Eu explico.
O número que eu quero procurar , por exemplo "2", fica na célula F3, mas na macro ele aparece como WHAT:="2":
Range("F3").Select
Selection.Copy
Sheets("Tabela").Select
Columns("A:A").Select
Selection.Find(What:="2", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
O problema é que no campo onde está 2, poderia ser qualquer número, então preciso que a macro pegue o valor que está na célula naquele momento e não "2", apenas. No fim, se eu digitar "5", ela tem que achar em qual célula daquela coluna (no caso, a coluna "A") está o número "5" (convém dizer: os números não se repetem) e parar ali.
Tem jeito de trocar esse "what:=" por outra coisa coisa, quem sabe uma caixa de texto de onde a macro pudesse copiar o valor?
Espero ter sido claro o suficiente, mas qualquer coisa estou por aqui.
Desde já, obrigado a todos!