eu acabei de resolver o problema aqui mais o meu código ficou bem diferrente do seu  o seu código está faltando muitas coisas  primeiro: você não precisa declarar variavel dim  você pode declarar a variável dentro do sub (opicional)  segundo: você está esquecendo de aplicar a regra do armstrong  dica: apaga td e pense no q v fez pra resolver você vai usar  2 laço for 1 bloco if a função len e a função mid   nada mais que isso  e a solução pode variar dependendo da forma q você quer vizualizar o resultado  não fika chutando porque assim você não vai consegui tente ver uma certa logica siga uma linha de raaciocino  porque isso é bem facil