Numérotation auto

E

Emmanuel

Guest
Bonjour le Forum

En colonne A j'ai des numéro
En colonne B j'ai des noms

Comment puis je avoir une numérotataion automatique sans qu'elle s'actualise lors de la suppression d'une ligne?

A B

1 TOTO
2 TITI
3 TUTU

si je supprime TITI, je ne veux pas que TUTU porte le N°2, mais conserve son N° d'origine.....
MERCI pour vos aides

Emmanuel
 
@

@+Thierry

Guest
Bonjour Emmanuel, le Forum

Je ne sais pas si tous se passera bien !! (lol), mais on peut toujours s'orienter vers une macro évènementielle dans le Private Module de la Feuille en Question...

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("B:B")) Is Nothing Then
On Error Resume Next
If Target.Value <> "" Then
Target.Offset(0, -1).Value = Target.Offset(-1, -1).Value + 1
End If
End If
End Sub

Le On Error Resume Next est justement là pour éviter le plantage si on supprime une ligne... Mais sans plus de tests...

Bon Appétit
@+Thierry
 
Y

yeahou

Guest
Bonjour Emmanuel, Thierry, le forum

Je vais peut être dire une énorme bétise du style lapalissade mais tant pis.
Emmanuel, quand tu parles de numérotation auto, tu entre une formule du type
en A2 "=A1+1"
et ensuite tu fais une recopie incrémentée pour numéroter. Ton problème est que si tu supprimes une ligne, ton numéro étant égal à la cellule précédente +1, ce numéro se trouve modifié.
Solution 1-Si pour faire ta numérotation auto, tu entres 1 en A1, 2 en A2
tu sélectionnes les deux cellules et la la tu fais ta recopie incrémentée. Les numéros seront alors écrits en dur et ne seront plus modifié sur une suppression de ligne.
Solution 2- tu restes sur le principe de cellule = cellule précédente +1, aprés la recopie incrémentée, tu sélectionne ta colonne A ou les valeurs que tu désires figer, bouton droit/copier, bouton droit collage spécial, coller valeurs. Tes valeurs étant maintenant écrites en dur, elles ne seront plus modifiées.

Cordialement, A+
 
B

Bernard

Guest
Bonsoir Emmanuel, Thierry, Yeahou et Monique

J'ai souvenir de la formule de Monique :

=si(B11="";"";ligne(b11)-x)

x étant le nombre de ligne précédent le numéro 1 dans le tableau.

Cordialement

Bernard
 
@

@+Thierry

Guest
Bonsoir Bernard, Yeahou, Emmanuel, le Forum

Pour Bernard, il me semble que c'est l'inverse qu'Emmanuel veut obtenir (ou j'y comprends toujours rien en formule !!! (lol))

Pour Yeahou, non ce n'est pas une lapalissade, j'applique ta solution 1 une bonne centaine de fois par jours (lol) !!! (si je dois arriver à la 2, alors je fais du VBA !!)

Mais c'est ceci qui est génial, chacun fait comme il veut !! (lol)

Bonne Nuit
@+Thierry
 
E

Emmanuel

Guest
Bonjour Bernard, Yeahou, @+THIERRY

Je suis d'accord avec toi Yeahou et encore que ta solution et un peu longue
(tu tapes "1" copier glisser avec la touche CTRL maintenu et ça fait la suite)
mais c'est plus de l'automatisme, mais du manuel.

Sinon bernard la formule de Monique je vais essayer, mais a vu d'oeil.......

MAIS MERCI quand même pour vos réponse.

Celle de @+THIERRY me convient tout à fait (@+Thierry)
J'utilise un userform pour alimenter un tableau d'une quarantaine de colonne
et X ligne et inversement pour visualiser les données, donc je n'intervient pas directement dans le tableau
tout ça grace à @+Thierry indirectement en utilisant différentes Démos de sa composition. ceci juste pour lui dire un grand MERCI de nous faire partager son expèirience, pour toutes ces explications ect...ce qui permet de faire avancer les autodidactes et en même temps je remercie toute les personnes qui partages leurs savoir, humainement c'est très grand.

Bonne journée
Emmanuel
 
B

Bernard

Guest
Bonjour à tous

Bien vu @+Thierry, j'ai lu la question un peu vite et la réponse toute aussi rapide contient la même incohérence.

Pour mon inconséquence je copie cent lignes.
accro.gif


Cordialement

Bernard
 

Discussions similaires

Réponses
2
Affichages
673

Statistiques des forums

Discussions
314 242
Messages
2 107 668
Membres
109 895
dernier inscrit
Jadore