Você está no caminho certo ao usar as vírgulas para identificar os números individuais. Isso funciona para 50 valores separados por vírgula - se você estiver no Excel 2010, isso pode ser expandido para 8000 itens (embora, para muitos, eu provavelmente reconsidere se essa é a melhor maneira de lidar com o problema):
Digamos que sua lista de números esteja na célula A2.
-
Se a sua lista de números tiver espaços após as vírgulas, faça um localizar e substituir para removê-los ou faça uma substituição na célula B2:
=SUBSTITUTE(A2," ","")
. -
Agora vamos encontrar todas as vírgulas. Na célula C2, insira
=SEARCH(",",$B2,1)
. Isso encontra a posição no texto da primeira vírgula. -
Em D2, insira uma fórmula semelhante, mas ligeiramente diferente, para encontrar a próxima vírgula:
=SEARCH(",",$B2,C2+1)
-
Copie isso para (digamos) 50 colunas. Isso levará você para a coluna AZ.
-
Agora podemos pegar cada número individual. Na célula BA2, insira
=IFERROR(LEFT(B2,C2-1),"")
. Isso captura todo o texto à esquerda da primeira vírgula ou não retorna nada se a célula estiver vazia. -
Em BB2 digite
=MID($B2,C2+1,D2-C2-1)
para extrair o próximo número ou não retorne nada se não houver nenhum número nessa posição. -
Copie BB2 para 50 colunas, isso deve levar você à coluna CX.
-
Agora você pode atribuir sua validação de célula ao intervalo BA2: CX2 e cada número aparecerá no menu suspenso.