Excel - Enviar valor da célula para o destino

Na Microsoft, fazer cálculos e acertar registros regulares pode ser feito por fórmulas no software de escritório do Excel. O envio de valores de uma célula no Excel para destino pode ser realizado pelo valor de cópia e colar o valor da coluna na célula de destino. Em uma coluna A se o valor for zero, e na coluna K o valor for maior que zero, copie o valor da coluna "A" e cole na coluna "K". O valor da coluna é controlado por funções simples de copiar e colar no Windows. Para adicionar várias colunas, faça a fórmula como "C: K". O cálculo é feito para a próxima coluna até que a última coluna seja alcançada e o valor seja copiado e colado na coluna de destino.

Questão

É possível enviar o valor de uma célula (copiar e colar especial) para outra célula em que o valor não seria perturbado quando o valor da fonte fosse alterado para '0'?

Minha planilha de resumo da calculadora da folha de pagamento obtém informações de outras planilhas a cada semana no arquivo do Excel e calcula a folha de pagamento da semana atual. A semana anterior teve valores, mas agora, durante a semana atual, as células da semana anterior são 0.

Meu objetivo é manter os valores da semana anterior em outra matriz de células, para que eu possa ter um total em execução para o mês.

Exemplo:

A3 tem a fórmula:

 = SE (A3 = 'Calculadora de folha de pagamento'! M2, VLOOKUP (H1, 'Calculadora de folha de pagamento'! $ B $ 3: $ M $ 28, 8, FALSE), 0) 

Esse valor precisa ser postado no K3, mas somente se for maior que '0'.

Se A3 retorna um valor de '0', qualquer valor maior que '0' que foi postado anteriormente no K3 seria deixado sozinho.

Eu tenho feito isso manualmente simplesmente copiando os valores que eu quero salvar, então usando o comando 'colar especial' e escolhendo 'valores', colados no alvo. O 'pular espaços em branco' não faz nada. A macro:

Sub Macro1 ()

'

Macro Macro1

'

'

Faixa ("C3"). Selecione

ActiveWindow.ScrollRow = 10

Intervalo ("C3: I52"). Selecione

Selection.Copy

Faixa ("K3"). Selecione

Selection.PasteSpecial Paste: = xlValues, operação: = xlNone, SkipBlanks: = _

Verdadeiro, transpor: = falso

Faixa ("K3"). Selecione

Application.CutCopyMode = False

End Sub

Sobrescreve os valores das semanas anteriores com zeros se eu escolher pular espaços em branco ou não (provavelmente porque as células são zeros, não em branco!)

Eu estou trabalhando com a matriz A3: I54 e desejo copiar e colar quaisquer valores maiores que '0' para K3: Q54 retendo quaisquer valores que foram postados anteriormente em K3: Q54 que sejam maiores que '0'.

Solução

Talvez isso possa levá-lo na direção certa se a minha interpretação estiver correta.

Isto irá comparar a coluna A com o que está atualmente na coluna K ........

A1 compara o valor em K1

A2 compara o valor em K2

etc ....

Se a coluna A for zero e a coluna K for maior que zero, mantenha o valor na coluna K. Caso contrário, copie o valor na coluna A para a coluna K.

 Sub Macro1 () Dim jj = 3 Do Até Range ("A" & j) = "" Se Range ("A" & j) = 0 Então Range ("K" & j) = Range ("K" & j) Else Range ("K" & j) = Faixa ("A" & j) End Se j = j + 1 Loop End Sub 

Para adicionar várias colunas, faça com que a macro pareça "C: K"

 Sub Macro1 () Dim jj = 3 Do Até Range ("C" & j) = "" Se Range ("C" & j) = 0 Então Range ("K" & j) = Range ("K" & j) Else Range ("K" & j) = Faixa ("C" & j) End If Se Range ("D" & j) = 0 Então Range ("L" & j) = Faixa ("L" & j) Faixa ("L" & j) = Faixa ("D" & j) Fim Se Se Faixa ("E" & j) = 0 Então Faixa ("M" & j) = Faixa ("M" & j) Outros ("M" & j) = Faixa ("E" & j) Fim Se Se Range ("F" & j) = 0 Então Range ("N" & j) = Faixa ("N" & j) Else Range ( "N" & j) = Faixa ("F" & j) Fim Se Se Faixa ("G" & j) = 0 Então Faixa ("O" & j) = Faixa ("O" & j) Faixa Adicional (" O "& j) = Faixa (" G "& j) End If Se Range (" H "& j) = 0 Então Range (" P "& j) = Faixa (" P "& j) Else Range (" P "& j) = Faixa (" H "& j) Fim Se Se Faixa (" I "& j) = 0 Então Faixa (" Q "& j) = Faixa (" Q "& j) Faixa Adicional (" Q " & j) = Range ("I" & j) End Se j = j + 1 Loop End Sub 

Observe que

Obrigado ao WutUp WutUp por esta dica no fórum.

Artigo Anterior Próximo Artigo

Principais Dicas