Página 1 de 1

Copiar somente algumas células da Linha Acima

Enviado: 10 Dez 2021 às 18:14
por SandroLima
Boa tarde, colegas.

Como posso adequar esse código para que ele copie somente algumas células da linha imediatamente acima na tabela?
Código: Selecionar todos
With Tabela
                .ListRows.Add (Linha), alwaysinsert:=True
                .ListRows(1).Range.Copy
                .ListRows(2).Range.PasteSpecial xlPasteAllUsingSourceTheme, Operation:=xlNone _
                    , SkipBlanks:=False, Transpose:=False
              
            End With
Tenho uma Tabela que possui aproximadamente 20 colunas e algumas delas com fórmulas.
Preciso copiar os valores da Linha 1 para a Linha 2 e isso o código acima atende certinho.
Mas agora tenho necessidade de copiar SOMENTE os valores das colunas (3 a 6), (9) e (11 a 12) para não perder as fórmulas das demais colunas.
Acho que funcionaria com a função "ARRAY", correto? Mas não sei montar o código com ela ainda.
Alguém poderia me ajudar?

Re: Copiar somente algumas células da Linha Acima

Enviado: 11 Dez 2021 às 02:06
por DJunqueira
Teste essa macro e repense seus conceitos.

Re: Copiar somente algumas células da Linha Acima

Enviado: 11 Dez 2021 às 12:09
por SandroLima
Bacana! Funciona ok!
Mas ao inserir a linha na tabela ele já mantem as fórmulas.
A questão é que existem dados dos intervalos específicos que realmente preciso copiar e colar na linha logo abaixo e nos demais campos não posso copiar e colar mas preciso manter as fórmulas.
Mas agora tenho necessidade de copiar SOMENTE os valores das colunas (3 a 6), (9) e (11 a 12) para não perder as fórmulas das demais colunas.
Acho que seria algo com array e offset... mas não sei escrever esse código.

Re: Copiar somente algumas células da Linha Acima

Enviado: 11 Dez 2021 às 23:01
por DJunqueira
Tá na hora de vc montar um exemplo com o resultado esperado, eu já montei uma planilha.
Por favor, informe tb a versão do seu Excel.

Re: Copiar somente algumas células da Linha Acima

Enviado: 20 Dez 2021 às 21:34
por SandroLima
Boa noite...
Alguém poderia ajudar?
Quero que a Macro copie SOMENTE os valores do intervalo de células da linha superior para a linha imediatamente abaixo das Colunas destacadas pela cor AMARELA na Tabela TB_FluxoCaixa.

Acho que funcionaria com a função "ARRAY" e "OFFSET", correto? Mas não soube implementar no código.

Logo abaixo da TB_FluxoCaixa inseri outra tabela representando o resultado desejado.

Segue planilha Anexa para verificação e testes

Re: Copiar somente algumas células da Linha Acima

Enviado: 21 Dez 2021 às 09:07
por DJunqueira
Ok, boa amostra, mas vc tb deve criar o hábito de informar a sua versão do Excel, faz muita diferença.