Inserer une ligne et un numero...

tvhabdo

XLDnaute Occasionnel
Inserer une ligne et un numero...

bonjour tous, bonjour le forum... :)

Dans la colonne "A" j'ai
1
2
3
4
5
etc etc ....
et je voudrai entre 2 lignes au hasard "INSERER"une ligne et que dans la premiere cellule s'inscrive le N°.

Ex. : si j'insert une ligne entre la 3 et la 4, et bien, dans la premiere cellule de cette ligne s'ecrive 4 et que la 4 devienne 5, etc etc....
Merci, a tous pour vos connaissances :)
 
Dernière édition:

skoobi

XLDnaute Barbatruc
Re : Inserer une ligne et un numero...

Bonsoir,

voici une macro évenementielle à mettre dans le code de la feuille (bouton droit sur l'onglet puid visualiser le code):

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Debug.Print Target.Row
If Target.Row = 1 Then
    Cells(Target.Row, 1).Value = 1
Else
    Cells(Target.Row, 1).Value = Cells(Target.Row - 1, 1).Value + 1
End If
For lig = Target.Row + 1 To [A1].End(xlDown).Row
    Cells(lig, 1).Value = Cells(lig, 1).Value + 1
Next
Application.EnableEvents = True
End Sub

Edit: oupsss, bonsoir Excel_lent, re Banzai64, je crois que je vais me coucher, mes neurones tournent au ralenti......:D
 

tvhabdo

XLDnaute Occasionnel
Re : Inserer une ligne et un numero...

Bonsoir, Excel lent... (rapide pour moi)

dans ton fichier, quand je cllc sur le bouton d'action, il ne m'insert pas une ligne complete, mais il incremente une cellule dans la colonne A avec le N°... moi ce que je souhaite c'est une ligne complete car j'ai des données dans les autres colonnes et il faut qu'elles bougent aussi...

Banzai.. j'ai copier le code comme indiqué, mais quand je fait insertion de ligne il insert et c'est tout, il ne m'incremente pas de N° dans la premiere cellule

Merci pour votre savoir

Le faire C bien mais le fer a dissout C pas cher.... :)
 
Dernière édition:

tvhabdo

XLDnaute Occasionnel
Re : Inserer une ligne et un numero...

Salut, SkooBi

j'ai bien copier le code comme indiqué, mais rien ne se passe

en colonne A, j'ai 1 2 3 , ton code est bien copié (tout est ok)
et pour inserer une ligne , je fais :
menu ; insertion, insert une ligne
et elle s'insert entre 2 ligne, mais le N° de la premiere cellule n'apparait pas :confused:

A ScooOOooOOoooOooobidOOooOOoo... C louche

qu'est ce que je fais de travers.??
 

Banzai64

XLDnaute Accro
Re : Inserer une ligne et un numero...

Bonjour
J'ai peut-être mal compris

J'avais compris que si on insère une ligne, les nombres situés dans la colonne A se mettent à jour
Visiblement ce n'est pas ça

Ce qu'il faudrait c'est que tu envoies un fichier (conditions habituelles) avec ce que tu as et ce que tu veux avoir
 

tvhabdo

XLDnaute Occasionnel
Re : Inserer une ligne et un numero...

Bonjour, Banz' ...

Voila je te joins mon fichier avec ce que j'ai et ce que je souhaiterais

:) .. Merci PAtrick
 

Pièces jointes

  • montest.xls
    18.5 KB · Affichages: 54
  • montest.xls
    18.5 KB · Affichages: 54
  • montest.xls
    18.5 KB · Affichages: 58

tvhabdo

XLDnaute Occasionnel
Re : Inserer une ligne et un numero...

Banz', tu as trouvé c'est ce" que je souhaite MAIS il doit y avoir un truc que je fais mal

voila ce que je fais : pour inserer une ligne, je me positionne sur la ligne 2 et je fais en haut dans le menu déroulant insertion - ligne, il m'insere la ligne me decale le tout vers le bas, mais aucun numero dans la premiere cellule .?

dis moi...

Merci beaucoup :)
 

bqtr

XLDnaute Accro
Re : Inserer une ligne et un numero...

Bonjour tvhabdo, Banzai64, skoobi, Excel_lent

D'après ce que je comprends, teste ceci:

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim cell As Range, derlign As Long
If Not Application.Intersect(Target, Range("A2:A" & Range("A65536").End(xlUp).Row)) Is Nothing Then
   Rows(Target.Row).Insert
   Target.Offset(-1, 0) = Target
     For Each cell In Range("A" & Target.Row & ":A" & Range("A65536").End(xlUp).Row)
       cell = cell + 1
     Next
        derlign = Range("C65536").End(xlUp).Row
        Range("C" & derlign).FormulaLocal = "=SOMME(C2:C" & derlign - 1 & ")"
End If
End Sub

Tu doubleClick dans la colonne A entre A1 et A?? , A?? doit être la dernière cellule non vide de la colonne A.
Cela insère une ligne, et modifie la numérotation. La formule est rajoutée automatiquement, elle est nécessaire car si tu rajoutes une ligne en doubleClickant sur A2, La formule se transforme en =SOMME(C3:C??).

A+
 

Pièces jointes

  • montest.zip
    9.8 KB · Affichages: 32
  • montest.zip
    9.8 KB · Affichages: 37
  • montest.zip
    9.8 KB · Affichages: 34

Banzai64

XLDnaute Accro
Re : Inserer une ligne et un numero...

Bonjour

Ah je n'avais pas pensé à ça
J'ai l'habitude lors de l'insertion de ligne de me placer sur la marge gauche --> click droit et insertion

Je ne sais pas comment intercepter l'événement d'insertion de ligne à partir du menu

Si quelqu'un connait comment déterminer si c'est une insertion je suis preneur

Mais dans l'état (lamentable) de mes connaissances je n'irais pas plus loin

désolé
 

tvhabdo

XLDnaute Occasionnel
Re : Inserer une ligne et un numero...

Banz'

J'ai essayer avec ta manip.. ça fait la meme chose que si on va chercher le menu deroulant

je me positionne entre 2 lignes qui ont un N° , j'appuis sur la touche ctrl, bouton droit insertion .. et il m'insere une ligne mais sans aucune action

Merci pour ton savoir

La vie appartient a ceux qui se levent tôt (Oui, oui répondaient les éboueurs...):)
 

Banzai64

XLDnaute Accro
Re : Inserer une ligne et un numero...

Re

Ma manip

Dans la marge gauche (là ou toutes lignes sont numérotées) je me positionne sur un numéro, dans la case à côté (case A numéro_de_ligne) il y a les nombres que tu as inscrit
Je fais un click droit et dans le menu qui apparait je choisis Insertion

Je viens de faire l'essai sur le fichier que tu avais envoyé et pas de problème
 

Pièces jointes

  • montest(1).zip
    9.5 KB · Affichages: 43

skoobi

XLDnaute Barbatruc
Re : Inserer une ligne et un numero...

Re bonjour tout le monde,

Salut, SkooBi

j'ai bien copier le code comme indiqué, mais rien ne se passe

en colonne A, j'ai 1 2 3 , ton code est bien copié (tout est ok)
et pour inserer une ligne , je fais :
menu ; insertion, insert une ligne
et elle s'insert entre 2 ligne, mais le N° de la premiere cellule n'apparait pas :confused:

A ScooOOooOOoooOooobidOOooOOoo... C louche

qu'est ce que je fais de travers.??

Je crois savoir pourquoi mon code et celui de banzai ne marche plus:
As-tu eu a un moment donné un plantage de la macro?
Si c'est le cas, il faut réactiver les macros évenementielles en faisant comme ceci:

dans VBE:
1. menu Affichage - Fenêtre exécution (ou Ctrl+G)
2. écris ceci dans la fenêtre qui c'est ouverte en bas:
Code:
Application.EnableEvents = True
3.colle cette macro à la place de l'actuelle:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Debug.Print Target.Row
If Target.Count <> 256 Then
    Application.EnableEvents = True
    Exit Sub
End If
If Target.Row = 1 Then
    Cells(Target.Row, 1).Value = 1
Else
    Cells(Target.Row, 1).Value = Cells(Target.Row - 1, 1).Value + 1
End If
For lig = Target.Row + 1 To Range("A" & Target.Row).End(xlDown).Row
    Cells(lig, 1).Value = Cells(lig, 1).Value + 1
Next
Application.EnableEvents = True
End Sub

tout devrait rentrer dans l'ordre.
test et dis-nous.
 

Discussions similaires

Réponses
9
Affichages
439

Membres actuellement en ligne

Statistiques des forums

Discussions
312 379
Messages
2 087 768
Membres
103 662
dernier inscrit
rterterert