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.
Por tulioh1
#35813
Boa tarde pessoal !
Preciso de uma ajuda com uma macro.

Coloquei o modelo para tentarem identificar o que preciso.

De início, coloquei uma macro que copia os resultados para outras colunas, mas apenas valores, e depois essa coluna com oss valores é copiada para uma aba "registros", que funcionará como um "banco de dados".
Não sei como editar isso para transferir direto como valores, mas do jeito que tá, está funcionando.

No entanto, gostaria de fazer o seguinte.

Vou colocar em uma linha, um campo para selecionar se é novo cadastro ou edição de um novo.
Ao fim da macro, todos os campos serão restaurados com as fórmulas (vou editar ainda).
Vou configurar todas as células para que, caso seja um edição, busque as informações correspondentes na planilha.

Ou seja:
Se novo registro: Fórmulas com suas funções normais.
Se edição: Busca das informações respectivas.
Depois ativarei o macro que irá incluir o novo registro, ou alterar caso já exista.
Essa mesma macro, irá restaurar as fórmulas e valores originais.

No entanto, não sei como configurar para ele realizar essa substituição.
Queria que fosse assim:
O campo em destaque amarelo é o número do registro.
Ele ira buscar esse valor nos "registros" e colar apenas os valores de tudo.

minha macro:

Sub formulario()
'
' VALORES Macro
'

'
Range("P4:AH62").Select
Application.CutCopyMode = False
Selection.Copy
ActiveWindow.ScrollColumn = 13
ActiveWindow.ScrollColumn = 14
ActiveWindow.ScrollColumn = 15
ActiveWindow.ScrollColumn = 16
ActiveWindow.ScrollColumn = 17
ActiveWindow.ScrollColumn = 18
ActiveWindow.ScrollColumn = 19
ActiveWindow.ScrollColumn = 20
Range("AI4").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Dim lUltimaLinhaAtiva As Long

lUltimaLinhaAtiva = Worksheets("Formulário").Cells(Worksheets("Formulário").Rows.Count, 1).End(xlUp).Row + 1


Rows(lUltimaLinhaAtiva & ":" & lUltimaLinhaAtiva).Select


Rows("4:78").EntireRow.Hidden = False
LastLinha = Sheets("Registros").Cells(Rows.Count, 1).End(xlUp).Row
Sheets("Formulário").Range("AI4:BA87").Copy Destination:=Sheets("Registros").Range("A" & LastLinha + 3)

End Sub


Pensei pra solucionar isso em uma fórmula que:
Busque o valor específico que eu digitar em uma célula, na aba de "registros".
Caso ele encontre, ele cole somente os valores a partir dessas célula, pois logo substituirá todas as demais informações.
Caso não encontre, ele não faça nada.

Me ajudaria muito...
Mas...
Não sei como...
Muito obrigado !!!!!!
Você não está autorizado a ver ou baixar esse anexo.
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