- 21 Dez 2017 às 10:20
#28970
Bom eu uso esta fórmula enorme pra descobrir digito de cpf, eu gostaria de saber se tem um jeito mais fácil (sem vb, macro e afins).
o que eu digito no A2, a celula com tal formula retorna o a2+digito. será que tem forma mais simples?
=SE(NÚM.CARACT(A2)=9;(TEXTO(A2;"###.###.###")&-(SE((MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11))>1;11-(MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11));0))&(SE((MOD((EXT.TEXTO(A2;1;1)*11)+(EXT.TEXTO(A2;2;1)*10)+(EXT.TEXTO(A2;3;1)*9)+(EXT.TEXTO(A2;4;1)*8)+(EXT.TEXTO(A2;5;1)*7)+(EXT.TEXTO(A2;6;1)*6)+(EXT.TEXTO(A2;7;1)*5)+(EXT.TEXTO(A2;8;1)*4)+(EXT.TEXTO(A2;9;1)*3)+((SE((MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11))>1;11-(MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11));0))*2);11))>1;11-(MOD((EXT.TEXTO(A2;1;1)*11)+(EXT.TEXTO(A2;2;1)*10)+(EXT.TEXTO(A2;3;1)*9)+(EXT.TEXTO(A2;4;1)*8)+(EXT.TEXTO(A2;5;1)*7)+(EXT.TEXTO(A2;6;1)*6)+(EXT.TEXTO(A2;7;1)*5)+(EXT.TEXTO(A2;8;1)*4)+(EXT.TEXTO(A2;9;1)*3)+((SE((MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11))>1;11-(MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11));0))*2);11));0)));"" )
o que eu digito no A2, a celula com tal formula retorna o a2+digito. será que tem forma mais simples?
=SE(NÚM.CARACT(A2)=9;(TEXTO(A2;"###.###.###")&-(SE((MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11))>1;11-(MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11));0))&(SE((MOD((EXT.TEXTO(A2;1;1)*11)+(EXT.TEXTO(A2;2;1)*10)+(EXT.TEXTO(A2;3;1)*9)+(EXT.TEXTO(A2;4;1)*8)+(EXT.TEXTO(A2;5;1)*7)+(EXT.TEXTO(A2;6;1)*6)+(EXT.TEXTO(A2;7;1)*5)+(EXT.TEXTO(A2;8;1)*4)+(EXT.TEXTO(A2;9;1)*3)+((SE((MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11))>1;11-(MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11));0))*2);11))>1;11-(MOD((EXT.TEXTO(A2;1;1)*11)+(EXT.TEXTO(A2;2;1)*10)+(EXT.TEXTO(A2;3;1)*9)+(EXT.TEXTO(A2;4;1)*8)+(EXT.TEXTO(A2;5;1)*7)+(EXT.TEXTO(A2;6;1)*6)+(EXT.TEXTO(A2;7;1)*5)+(EXT.TEXTO(A2;8;1)*4)+(EXT.TEXTO(A2;9;1)*3)+((SE((MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11))>1;11-(MOD((EXT.TEXTO(A2;1;1)*10)+(EXT.TEXTO(A2;2;1)*9)+(EXT.TEXTO(A2;3;1)*8)+(EXT.TEXTO(A2;4;1)*7)+(EXT.TEXTO(A2;5;1)*6)+(EXT.TEXTO(A2;6;1)*5)+(EXT.TEXTO(A2;7;1)*4)+(EXT.TEXTO(A2;8;1)*3)+(EXT.TEXTO(A2;9;1)*2);11));0))*2);11));0)));"" )