Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Insérer une SEULE ligne dès saisie d'un texte dans une cellule

  • Initiateur de la discussion Louison_MT
  • Date de début
L

Louison_MT

Guest
Bonjour,

je travaille sur un fichier de suivi des anomalies (fichier anonymisé ci-joint).
Je souhaite que lorsque l'on saisit une ligne de suivi pour une anomalie, une nouvelle ligne (et une seule) se crée juste en dessous lorsque l'on sélectionne "En Cours" dans la colonne N (nouvelle ligne où les utilisateurs pourront renseigner un nouvel enregistrement de suivi pour la même anomalie)
J'ai réussi à faire insérer une ligne, mais d'autres s'ajoutent ensuite dès que je modifie n'importe quelle cellule. Faut-il que j'enlève mon bout de code de Worksheet_Change ? Mais dans ce cas quelle est la solution pour que la ligne s'ajoute automatiquement (sans que les utilisateurs aient besoin de "lancer" la macro) ?

Merci d'avance pour votre aide.

PS : vous pouvez considérer que je suis débutant (j'ai rien codé depuis des années et ce que je faisais n'était pas de très haut niveau)
 

Pièces jointes

  • Suivi écarts SVG v01.04 - anonyme.xlsm
    25.2 KB · Affichages: 5

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Dans le fichier joint j'ai juste appliqué stricto sensu ce que vous demandiez.
Je n'ai pas trop compris ce que le reste de votre macro était destiné à réaliser, si ce n'est rajouter des lignes à chaque "En Cours" de la colonne N.
Ci-dessous la ligne ne s'ajoute que Si la cellule changée est seule, que sa colonne est N et son text "En Cours".
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
    '
    '
    If Target.CountLarge = 1 And Target.Column = 14 And Target.Text = "En Cours" Then
        Application.EnableEvents = False ' pour ne pas se mordre la queue
        Target.EntireRow.Insert xlShiftDown
        Application.EnableEvents = True
    End If
 
End Sub
 

Pièces jointes

  • Suivi écarts SVG v01.04 - anonyme.xlsm
    22.5 KB · Affichages: 6
L

Louison_MT

Guest
Super ! ça marche et c'est beaucoup plus simple que ce que j'avais fait, merci bien. En revanche ça me rajoute la ligne au dessus alors que je la voudrais au dessous. J'ai essayé de changer le "ShiftDown" en "ShiftUp" mais sans succès.

La première moitié de la macro rajoute une ligne (avec un numéro d'anomalie qui s'incrémente) quand un utilisateur marque son nom lorsqu'il veut saisir une nouvelle anomalie.
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…