Página 1 de 1
Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 09:40
por Angra
Bom dia
Tenho uma lista com formulas simples referenciadas, onde um valor é deletado e outro corresponde na mesma linha também. Quando faço a reposição desses valores, as formulas referenciadas são deletadas

Re: Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 10:02
por babdallas
Se o primeiro bloco for vazio, pega do terceiro bloco, caso contrário pega do primeiro bloco? Seria isso?
Re: Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 10:36
por Angra
Ainda não é isso. Tenho a macro que copia do bloco 3 para o bloco 1. Após essa copia o bloco 2 fica ativo com esses valores do bloco 1. O que preciso é de um "gatilho", assim que deletar um valor qualquer no bloco 1, esse mesmo valor referenciado no bloco 2 é deletado. Preciso de um artificio que delete no bloco 2 o correspondente no bloco 1, mas sem perder as formulas residentes no bloco 2

Re: Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 11:16
por babdallas
Quando você diz deletar os valores, significa deletar a linha (ou a célula) ou apenas apagar o valor do bloco1?
Re: Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 12:09
por Angra
"Quando você diz deletar os valores, significa deletar a linha (ou a célula) ou apenas apagar o valor do bloco1?"
Apagar o valor do bloco 1 e por conseguinte o valor correspondente no bloco 2

Re: Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 12:13
por babdallas
Se o bloco 2 tem uma fórmula que depende do bloco 1, então se você apagar um valor do bloco 1, consequentemente o valor do bloco 2 será apagado. Por isso peço que dê um exemplo prático, porque ainda não entendi o problema (desculpe a minha lentidão em entender seu problema).
Re: Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 12:55
por Angra
"então se você apagar um valor do bloco 1, consequentemente o valor do bloco 2 será apagado", junto com as formulas. Meu problema é encontrar uma maneira de conservar as formulas do bloco 2, depois que não existir mas valores no bloco 1. Porque aí eu preciso outra vez copiar os valores do bloco 3 e colar no bloco 2 mas as formulas não estão mais lá. Então preciso encontrar uma maneira de copiar do bloco 3 para o bloco 2 e ficar tudo como estavam antes. Não existe uma maneira de deixar os valores do bloco 3 sempre como formulas e depois copiar tudo do bloco 3 para o bloco 2.
Re: Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 13:23
por babdallas
O fluxo que eu tinha entendido era:
Bloco3: bloco que você edita
Bloco1: recebe valores do bloco 3 toda vez que você digita algo no bloco 3
Bloco2: será sempre igual aos valores do Bloco1
Estou com dificuldade de entender o seu problema. Minha sugestão é você fazer um passo a passo, explicando o fluxo entre esses blocos e mostrando de forma detalhada quando e porque você possui um problema.
Desculpe não ter entendido até agora. Talvez alguém já tenha entendido e possa te ajudar. Mas para eu te ajudar eu preciso entender exatamente este fluxo das informações entre os blocos.
Re: Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 15:54
por Angra
Veja nessa nova representação, usando somente macro se ficou melhor o entendimento

Re: Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 17:55
por babdallas
Não sei se é isso. Teste alterar as colunas N e P e ver o efeito nas colunas U e V, respectivamente.
Código: Selecionar todosPrivate Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Me.Range("Bloco1_1")) Is Nothing Then
Me.Range("Bloco2_1").Cells(Target.Row - Me.Range("Bloco1_1").Range("A1").Row + 1, 1).Value = Target.Value2
End If
If Not Application.Intersect(Target, Me.Range("Bloco1_2")) Is Nothing Then
Me.Range("Bloco2_2").Cells(Target.Row - Me.Range("Bloco1_2").Range("A1").Row + 1, 1).Value = Target.Value2
End If
End Sub
Re: Macro de criar formulas ou similar
Enviado: 02 Jun 2020 às 20:16
por Angra
Perfeito!!! Pediria só mais uma gentileza, informar na macro os intervalos reais:
Bloco 1 AU5:AU340 e AX5:AX340
Bloco 2 FH5:FH340 e FI5:FI340
Macro de criar formulas ou similar
Enviado: 03 Jun 2020 às 01:52
por Angra
Outra coisa percebida, usando uma macro de copiar/colar, só os dois primeiros valores são copiados/colados. A lista inteira tem 340 linhas (AU5:AU340) mais 340 linhas (AX5:AX340).

e digitar tudo...
A macro de copiar usada:
Sub Copi()
Application.ScreenUpdating = False
Range("ah10:aj14").Copy
Range("n10").PasteSpecial xlPasteValues
Range("A1").Select
Application.CutCopyMode = False
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
Resultado obtido com a macro de copiar:
x__x _______ x x
x__x
x__x
x__x
x__x
Re: Macro de criar formulas ou similar
Enviado: 03 Jun 2020 às 06:26
por babdallas
Código: Selecionar todosPrivate Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Me.Range("AU5:AU340")) Is Nothing Then
Me.Range("FH5:FH340").Cells(Target.Row - Me.Range("AU5:AU340").Range("A1").Row + 1, 1).Value = Target.Value2
End If
If Not Application.Intersect(Target, Me.Range("AX5:AX340")) Is Nothing Then
Me.Range("FI5:FI340").Cells(Target.Row - Me.Range("AX5:AX340").Range("A1").Row + 1, 1).Value = Target.Value2
End If
End Sub
Quanto à macro de copiar valores, você quer copiar valores de que qual intervalo para qual intervalo?
Re: Macro de criar formulas ou similar
Enviado: 03 Jun 2020 às 07:45
por Angra
Copia de FT5:FU340
Cola em:
FH5:FI340
AU5:AU340
AX5:AX340
Re: Macro de criar formulas ou similar
Enviado: 03 Jun 2020 às 07:54
por babdallas
Código: Selecionar todosPublic Sub Copiar()
With Planilha1
.Range("FH5:FI340").Value2 = .Range("FY5:FU340").Value2
.Range("AU5:AU340").Value2 = .Range("FY5:FU340").Value2
.Range("AX5:AX340").Value2 = .Range("FY5:FU340").Value2
End With
End Sub
Re: Macro de criar formulas ou similar
Enviado: 03 Jun 2020 às 09:18
por Angra
Brigadasso, ficou show como sempre
