Não tenho certeza se entendi por que você tem uma fórmula if-else tão grande e como você a usa em cada célula (A1, A2, etc.).
Então, por que não usar uma fórmula mais simples para cada dígito que você deseja remover?
Algo como o seguinte deve funcionar para você:
Para cada célula na coluna SAME, começando em ROW 1, use a seguinte fórmula:
=LEFT(MOD('Worksheet 1'!$D$7,POWER(10,9-ROW()))/POWER(10,9-ROW()-1))
i.e. é a mesma fórmula para todas as células na mesma coluna, portanto, você pode apenas preencher.
Algumas explicações:
POWER(10,9-ROW())
está calculando um divisor, baseado em potências de 10.
O poder 9-ROW()
dará 8, 7, 6, 5, ..., ao descer a coluna, SE você começar na linha 1, é claro.
Portanto, à medida que você desce a coluna, você divide por potências sucessivamente menores de 10, para extrair o dígito nessa posição decimal.
..
Para começar em uma linha diferente de 1, ou para extrair dígitos começando em posições diferentes de 10.000.000s, basta alterar o 9
para que X -ROW()
forneça a primeira potência de dez que você deseja iniciar em .
..
Note também que, em vez de " LEFT
" no item acima, você poderia usar " ROUNDDOWN
" para zero casas decimais (ou seja, algo assim: ROUNDDOWN(MOD.../POWER..., 0)
.