Digamos que eu tenha números nas células A1 a Z1 e na célula A2, eu tenha a fórmula A1 + B1. Que método posso usar para que na célula B2 todas as minhas referências de células sejam incrementadas em 2 para que a fórmula seja C1 + D1? Suponha que eu tenha que repetir isso até Z1. O método também deve preservar as referências absolutas, portanto, se eu tiver referências absolutas e referências relativas, apenas as referências relativas devem mudar.
Posso dar a você uma maneira "genérica"... que é uma maneira muito "low-tech" de fazer isso, mas supondo que você possa propagar suas fórmulas para a direita para que existam as fórmulas corretas, mas não nos lugares certos, isso resolve as coisas. E se você precisar copiar o produto acabado em algum lugar, ele manterá todos os mesmos relacionamentos.
Então, você tem
=A1+B1
na célula A2. Você copia para B2, C2, D2... Y2. Agora B2 tem=B1+C1
(não queria), C2 tem=C1+D1
(queria, mas não no lugar certo), e assim por diante até Y2, que tem o desejado,=Y1+Z1
mas está cerca de 12 a 13 colunas à direita de onde você deseja.Parece que não há muito progresso.
Mas a seguir, selecione (destaque) todas as células indesejadas. Basicamente, destaque B2, D2, F2, H2 e assim por diante até X2. Exclua as células (as células, não apenas seu conteúdo) e, quando o Excel solicitar, diga para deslocar as células mantidas para a esquerda.
Agora você tem todas aquelas células "procuro, mas..." apenas, e elas também estão nos lugares certos.
Isso lida com quaisquer referências absolutas em suas fórmulas sem nenhum problema. Não estou dizendo que você foi capaz de simplesmente copiar a célula A2 e colar no intervalo B2:X2 sem ajustá-los, pois você pode ter algumas referências absolutas variáveis e tudo pode ser misteriosamente complexo, mas se fosse apenas uma questão de mencionar isso que as soluções estereotipadas os honraram por serem diretas, isso faz o trabalho, sem problemas.
O layout que você descreve provavelmente não é algo para ser copiado e colado em massa em outro lugar, pois simplesmente não é propício para isso (portanto, não como muitos problemas em que você deseja copiar e colar alguns milhares de linhas), mas se você quiser a mesma estrutura em outro lugar, apenas copie as células resultantes finais na linha 2 para ser a nova "linha 2" onde quer que seja necessário.
Mais uma vez, tão absolutamente de baixa tecnologia. Quase embaraçoso, pode-se dizer. Mas fácil e difícil de estragar. Não é complexo como qualquer método estereotipado seria.
E se alguém se preocupa com isso (não há realmente nenhum problema hoje em dia, a menos que se tenha 100.000 linhas de alguma coisa... os computadores são muito capazes agora), não há nada "volátil" nisso.
Se você tiver 300 colunas, não apenas 26, levará apenas meio minuto extra. Não é realmente uma fera em termos de esforço.
Para um método não volátil, você pode apenas usar uma
INDEX
função em cada célula, especificando as duas colunas a serem usadas para cada cálculo. Você usariaCOLUMN()
para obter a coluna em que o resultado entra, multiplica por dois e subtrai um para um adendo, então o mesmo, mas não subtraindo um para o segundo adendo. Isso pode ser copiado e colado. Pode parecer com:Ao olhar para B2, o que estaria acontecendo seria que na primeira metade, o Excel encontra
COLUMN()
é "2", então multiplica por 2 para obter 4 e subtrai um para obter 3 dando a célula C1 para somar, e na segunda metade pára em 4 para dar célula D1. E os adiciona. A célula C2 fornece "3" para a coluna, portanto, os elementos 5 e 6 (E1, F1) são retornados da matriz/intervalo A1:Z1.Mais pesado computacionalmente do que as fórmulas A1+B1 simples que o método de baixa tecnologia oferece, mas para 13 fórmulas? Sem significado.
Ressalvas? Bem, ele não lidaria com essas referências absolutas, mas você pode digitá-las manualmente uma vez, em A2, e usar o acima para encontrar as duas células do título. Low-tech à sua maneira!
De qualquer forma, a baixa tecnologia é algo a ser lembrado quando se deseja fazer coisas que o Excel não é adequado para fazer imediatamente.
Uma das muitas opções possíveis é a fórmula
=SUM(OFFSET($A$1;0;(COLUMN()-1)*2;1;2))