A maneira que eu gostaria de começar seria dividir o problema em um monte de colunas, cada uma com uma parte do problema. Por exemplo:
A B C D E F G H I J K L M N
1 12 0,12,13,14 2 5 8 0 12 13 14 Yes Yes No No Yes, Yes, No, No
2 101 101,102,103,104 4 8 12 101 102 103 104 Yes No No No Yes, No, No, No
Estas são as expressões de C1 a N1:
C1 =FIND(",",B1) D1 =FIND(",",B1,C1+1) E1 =FIND(",",B1,D1+1)
F1 =LEFT(B1,C1-1)+0 G1 =MID(B1,C1+1,D1-C1-1)+0
H1 =MID(B1,D1+1,E1-D1-1)+0 I1 =RIGHT(B1,LEN(B1)-E1)+0
J1 =IF(F1<=$A1,"Yes","No") K1, L1, M1 (copy from J1)
N1 =J1&", "&K1&", "&L1&", "&M1
Se não for óbvio, o "+0" é uma maneira prática de forçar um valor de texto em um número, de modo que as comparações em I, J, K e L sejam feitas como comparações numéricas em vez de como texto.
Para C2 a N2, copie de C1 a N1.
Se você não quiser usar colunas extras, poderá unir os resultados da versão com várias colunas em uma expressão gigante e complicada em uma única coluna. É mais fácil fazer isso em várias etapas. Por exemplo, o primeiro passo seria combinar as expressões FIND com as expressões de string. Aqui está um código para isso:
F =LEFT(B1,FIND(",",B1)-1)+0
G =MID(B1,FIND(",",B1)+1,FIND(",",B1,FIND(",",B1)+1)-FIND(",",B1)-1)+0
H =MID(B1,FIND(",",B1,FIND(",",B1)+1)+1,FIND(",",B1,FIND(",",B1,FIND(",",B1)+1)+1)-FIND(",",B1,FIND(",",B1)+1)-1)+0
I =RIGHT(B1,LEN(B1)-FIND(",",B1,FIND(",",B1,FIND(",",B1)+1)+1))+0
Eles são bem horríveis, porque os usos de E usam D, que usa C, e são usados várias vezes por G, H e I. Colocar todos os resultados intermediários em colunas ocultas salva muitas expressões duplicadas. / p>
As coisas pioram se você quiser ir além de quatro números separados por vírgulas na coluna B, mas a maneira de adicionar colunas deve ser bastante óbvia.
Permitir que B tenha um número variável de números separados por vírgula não é tão óbvio. O truque é adicionar algumas instruções IF, testando as condições de erro. Isso levanta um ponto final, que isso não inclui nenhuma verificação de erros além do que está embutido no Excel. Uma planilha robusta deve incluir pelo menos a verificação de erros alguns .