Formule pour suite de numéros malgré modifications

Anthonymctm

XLDnaute Occasionnel
Bonjour le forum,

Ca fait quelques heures que je sèche sur une formule.

La formule en question doit me permettre de donner un numéro qui sert ensuite de base pour d'autres formules rechercheV.

A partir de maintenant vous comprendrez mieux sur le fichier exemple :p
Vous y verrez 4 exemples ou l'utilisateur intervient et le résultat souhaité sur les numéros.

Le numéro est unique (j'ai mis une petite formule pour vérifier qu'il ne manque aucun numéro et qu'il n'y ait pas de doublon non plus).
Il doit suivre l'ordre croissant et compléter cet ordre sans qu'il n'y ait de trou. (Ca ne doit pas faire 1,2,3,5,6,etc)
Si la formule est supprimée (parceque l'utilisateur à volontairement souhaiter ne pas appliquer les formules à cette endroit), les formules suivantes doivent reprendre le compte ex : 1,2,"",3,4 et non 1,2,"",4,5)

L'utilisateur doit pouvoir déplacer la ligne et le numéro associé ex : passé de 1,2,"",3,4 à 1,4,2,"",3
(pour ça il est possible qu'il fige le numéro en remplaçant manuellement la formule par le numéro en question)

Voilà, ça paraissait assez simple puis au final ça fait un bon moment que je me casse les dents dessus, a chaque fois il y a une des condition que je n'arrive pas à matérialiser ou je créer des références circulaires. o_O

Il est évidemment possible d'utiliser d'autres colonnes si besoin :)

Merci de votre aide <3
 

Pièces jointes

  • test lignes.xlsx
    18.6 KB · Affichages: 18
Dernière édition:

yojema

XLDnaute Occasionnel
Hello
je te propose une autre approche pour créer un Numéro ou une référence unique pour reprendre dans une formule de recherche v
Il s agit d'utilisée ce qui est saisie dans chaque ligne pour créer ce n° ou bien cette référence c'est en fait relativement simple
je te joint un fichier test ce qu'il contient et ce a quoi il sert t' importe peu regarde l'approche
 

Pièces jointes

  • test pour explication.xlsx
    286.4 KB · Affichages: 6

Anthonymctm

XLDnaute Occasionnel
Bonjour Yojema,

Merci de ton aide, je ne pense pas que ton exemple réponde à ce qu'il me faut :S

Dans mon cas je ne dois pas avoir d'élément manquant dans ma liste. Il faut également que je puisse supprimer des numéros et donc que le numéro supprimé se décale vers le bas.
Mes numéros sont très simple à générer, c'est tous les nombre entier en partant de 1 (donc 1,2,3,4,5, etc).

Sur mon fichier exemple tu devrais mieux comprendre ce que je cherche à obtenir
 

yojema

XLDnaute Occasionnel
Hello

Pour ce que tu demande j'ai regarder et je sèche ! Après je m'était fié à ce que tu notait dans ton 1er post à savoir

"La formule en question doit me permettre de donner un numéro qui sert ensuite de base pour d'autres formules rechercheV."

Si c est juste pour ça ce que je te propose me semblait approprié , tu dois avoir d'autre contrainte que je ne connais pas ! il y a des supercracks sur ce

site l'aide va venir

a+
 

Anthonymctm

XLDnaute Occasionnel
Oui c'est ça ^^

La j'avais réussi un truc pas mauvais à base de si, estformule, nb.si, min, max+1 etc.. mais au bout d'un moment, j'ai toujours un des scénario qui suit pas.

Il faudrait que je trouve le moyen d'identifier à partir de quel numéro la suite se casse ex: 1,2,"","6","3",5,7,8... Bah la il manque le 4 donc le 5 devrait être un 4, puis 7:5, puis 8:7
Bref, comme tu dis je suis sûre que c'est à la porté de certains sur le forum ^^
 

Anthonymctm

XLDnaute Occasionnel
Je touche du doigt ce que je dois obtenir !

Il me manque juste une macro a exécuter et je pense que ça devrait être bon !

J'ai joins le fichier en question.

Il faut que je remplace mes numéros en A par la formule ="valeur dans AC", si A est une formule.
Ex: AC151= 1 alors en A4 : =1

Je peux pas mettre en A4 : =AC151 sinon j'ai des référence circulaire mais si j'ai = la valeur, alors c'est bon

Je peux pas avoir juste la valeur (sans formule) parce que je me sers de estformule pour faire le distingo entre les formules et ce qui est tapé manuellement.

En résumé : Si A est formule alors A = valeur dans AC
A actualiser a chaque modification dans la plage A
 

Pièces jointes

  • Test ligne.xlsm
    60.4 KB · Affichages: 4

Anthonymctm

XLDnaute Occasionnel
Sinon une autre façon qui fonctionnerait serait simplement d'écrire manuellement les numéros 1,2,3,4,5, etc.
Et de copier une ligne + inserer les cellules copiées + supprimé le numéro qui sera en double (ça c'est pour faire mon insertion sans numéro de ligne affecté)
Et de faire le déplacer soit en déplaçant la ligne avec maj+clic soit en modifiant le numéro de la ligne.

Ca fonctionne très bien.. jusqu'à ce que j'active la protection de la feuille..
Et la impossible d'insérer les cellules copiées puisque certaines sont sur une plage protégée..
Impossible non plus de les déplacer avec maj + clic pour les mêmes raisons.

(C'était pour ça initialement que je voulais me focaliser sur les numéros)

Donc on a peut-être une solution à trouver du côté de autorisation.
Comme par exemple un code vba qui déprotège la feuille quand on a quelque chose dans le presse papier ? ou quand on cherche à coller ? Ou quand on cherche à déplacer ?
Ou simplement autoriser l'insertion et déplacement des cellules protégés o_O
 

Discussions similaires