Salut les Geek.
Bon comme je sais qu’il y a des pros du Tableur ici (hein CBen76 ) je m’adresse à vous parce que là je craque.
Le problème : j’ai une liste de nombres assez énorme (7000 environs) et dans cette liste, je dois trouver les nombres manquants. Exemple, j’ai la liste 1,2,3,5,6,7,8,10. Je dois trouver 4 et 9.
- premier soucis : la liste est en fait une liste de chaine de caractère. En effet les nombres sont entre guillemets : ‘1’ ‘2’ ‘3’…
Bon ça j’arrive à les changer en nombre avec =CNUM(SUBSTITUE(A3,"’","")) (ou A3 est la case où se situe le truc)
Ca fait le taf’, sauf que je dois écrire cette formule sur les 7000 cases… Et c’est long.
Comment copier cette formule rapidement sur toutes les cases ? (la liste des chaines est dans la colonne A, je mets les nombres transformés dans la colonne B .
Ce que je veux obtenir donc :
Colonne A Colonne B
’1’ 1
’2’ 2
’3’ 3
Etc
- Deuxième soucis : le coeur du problème, comment trouver les nombres manquant dans la colonne B rapidement ?
J’ai fait une macro qui marche avec 2 boucles, mais ça prend un temps fou vu que je teste tous les nombres sur toute la liste. Donc niet.
J’ai aussi pensé utiliser la formule de math qui donne la somme des nombres ( n(n+1)/2 pour la somme de 1 à n). J’utilise cette formule sur les deux premières cases, et je la compare à la somme des deux cases. S’il y a une différence, il y a un nombre manquant et je fais la soustraction pour le trouver.
Puis j’utilise la formule sur les 3 premières cases, que je compare de nouveau avec la somme des 3 premières cellules, puis sur les 4 premières, etc etc.
Mais ça foire s’il y a deux nombres manquants de suite.
Bref, si vous avez des pistes (surtout pour le 1) en fait, le reste je peux me débrouiller), je prends.
Merci d’avance.
PS : idéalement je fais ça dans Open Office. Mais Excel ça me va aussi.