Bonjour le club !
Je vais essayer d'être clair et concis:
> J'ai une valeur de test, que je veux trouver dans une feuille. (elle peut y être comme elle peut ne pas y être)
> Après avoir testé avec la méthode Find si l'objet range renvoyé est Nothing (donc valeur test non trouvée) je souhaiterais exécuter une ligne qui me permettrait de trouver la première cellule ayant une valeur supérieure à ma valeur test qui me renverrait un objet range comme la méthode Find.
(Afin par la suite de pouvoir insèrer une ligne avec ma valeur test au bon endroit).
Le but de cette partie de code est:
Si j'ai déjà la valeur test dans mon tableau, on récupère juste le n° de ligne. >Find suffit
Sinon, on récupère le n° de la ligne d'insertion, dès que l'on dépasse la valeur test. >Là je ne trouve pas! une sorte de Find conditionel ? (Ma valeur test est une variable numérique)
Une boucle suffit:mais j'essaie d'optimiser mon code sachant que les boucles c'est bien, mais ça prend beaucoup de cycles au final surtout sur des tableaux à 2XXX lignes, donc si je peux m'en passer... Sinon une méthode par approximations succécives pourrait être interressante, mais si une méthode toute faite qui tient sur une ligne existe, autant la prendre !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 For x= 2 to NbDeLignesTotal If .Cells(x,1) > Test then Ligne = x Exit For Endif Next x
Merci de m'exposer vos pistes
Bonne journée !
Partager