Pessoal, no link abaixo:
http://www.cjdinfo.com.br/Utilitarios/CalcDigMod11...
OBS: O código fonte desta página também não me serve, já que será em Excel.
pode-se consultar o dígito (que terá 1 posição) de um determinado número com 9 posições.
Ex 570360042 o dígito será 8
Ex 570360041 o dígito será 0
No exemplo 570 360 041 quero utilizar direto no Excel somando coluna a coluna sem usar macro, então fiz assim:
5*9=45
7*8=56
0*7=0
3*6=18
6*5=30
0*4=0
0*3=0
4*2=8
1*1=1
Total =158*10 e dividi por 11 que deu 144.
As céuluas são estas:
A2 - B2 - C2 - D2 - E2 - F2 - G2 - H2 - I2
5 7 0 3 6 0 0 4 1
=soma (A2*9)+(B2*8)
(C2*7)+(D2*6)
(E2*5)+(F2*4)
(G2*3)+(H2*2)
(I2*1)
O que está ocorrendo já que o digito é zero (como descobrir isto?, falta mais cálculos?)
O resultado deu 158 mas o dígito tem que ser (zero) como eu descubro ?
Se eu dividir 158 por 11 dá 14,36363636
Se eu Multiplicar 14,36363636 por 11 vai dar 158.
E agora mundo cruel ?
Copyright © 2024 QUIZLIB.COM - All rights reserved.
Answers & Comments
Verified answer
Sugiro o uso da função resto, que no excel em português é
MOD e a sintaxe é MOD(dividendo;divisor).
Os restos em uma divisão por 11 irão variar de zero a dez, e você precisará decidir o que fazer no caso do dez em particular(já que ele tem dois dígitos).
Existem algoritmos que atribuem zero neste caso, e existem algoritmos com tratamentos diferenciados para os valores zero e um.
Você resolve isso com a função lógica SE que tem a sintaxe:
SE(expressão lógica;valor para verdadeiro;valor para falso).
Ex: SE(MOD(158;11)=10;0;MOD(158;11)) o digito neste caso é 4. Pois 158 dividido por 11 dá 14 e sobram 4.
Espero ter ajudado.