Insertion auto de ligne en dessous (...)
FLoky
-
Mike-31 Messages postés 19571 Date d'inscription Statut Contributeur Dernière intervention -
Mike-31 Messages postés 19571 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Le tableau sur lequel je travail est composé de 19 colonnes (jusqu'à U, A et B servant de titre...) pour n lignes remplies à chaque appel traité (boîte de phoning...)
Les lignes débutent en 2, la première servant elle aussi de titre.
Ma derniere ligne donne évidement les sommes et moyennes de chaque colonnes.
Je souhaiterais mettre en place une macro (je débute depuis qq heures :-( ) qui me permettrai d'insérer automatiquement une ligne en plus, dès que je commence à saisir la première cellule en colonne C, et ainsi de suite à chaque ligne...
Je cherche depuis des heures sur des forums, sans résultats, même des macro où les n° de lignes/colonnes serait à modifier...
merci pour votre aide précieuse !
Le tableau sur lequel je travail est composé de 19 colonnes (jusqu'à U, A et B servant de titre...) pour n lignes remplies à chaque appel traité (boîte de phoning...)
Les lignes débutent en 2, la première servant elle aussi de titre.
Ma derniere ligne donne évidement les sommes et moyennes de chaque colonnes.
Je souhaiterais mettre en place une macro (je débute depuis qq heures :-( ) qui me permettrai d'insérer automatiquement une ligne en plus, dès que je commence à saisir la première cellule en colonne C, et ainsi de suite à chaque ligne...
Je cherche depuis des heures sur des forums, sans résultats, même des macro où les n° de lignes/colonnes serait à modifier...
merci pour votre aide précieuse !
A voir également:
- Insertion auto de ligne en dessous (...)
- Partage de photos en ligne - Guide
- Formulaire en ligne de meta - Guide
- Mètre en ligne - Guide
- Insertion sommaire word - Guide
- Insertion liste déroulante excel - Guide
3 réponses
Bonjour,
Cette macro insère une ligne lors d'un double clic sur la cellule C2 :
- ALT+F11 ---> ouvre une fenêtre Visual Basic
- En haut à gauche, tu as la liste de tes feuilles, double clic sur celle concernée par cette modification.
- Copie/Colle le code ci-dessus
- ferme la fenêtre Visual Basic
- Teste en double cliquant sur C2...
Cette macro insère une ligne lors d'un double clic sur la cellule C2 :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Address = "$C$2" And Target.Count = 1 Then Selection.EntireRow.Insert End If End Sub
- ALT+F11 ---> ouvre une fenêtre Visual Basic
- En haut à gauche, tu as la liste de tes feuilles, double clic sur celle concernée par cette modification.
- Copie/Colle le code ci-dessus
- ferme la fenêtre Visual Basic
- Teste en double cliquant sur C2...
Bonjour !
Un énooorme merci, même si j'aurai préféré une incrémentat° auto, sans double cliquer... Mais encore une fois, merci encore !
Un énooorme merci, même si j'aurai préféré une incrémentat° auto, sans double cliquer... Mais encore une fois, merci encore !
Bonjour,
Si le double clic ne vous sied guère, vous pouvez utiliser l'évènement SelectionChange, qui a chaque fois que vous sélectionnez une cellule se déclenche. Remplacez le code donné ci-dessus par celui-ci :
L'avantage du double clic réside dans la volonté de vouloir insérer une ligne. Avec ce nouveau code, à chaque fois que vous cliquerez dans C2, une nouvelle ligne s'insèrera... même si tel n'était pas votre souhait...
Si le double clic ne vous sied guère, vous pouvez utiliser l'évènement SelectionChange, qui a chaque fois que vous sélectionnez une cellule se déclenche. Remplacez le code donné ci-dessus par celui-ci :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Address = "$C$2" And Target.Count = 1 Then Selection.EntireRow.Insert End If End Sub
L'avantage du double clic réside dans la volonté de vouloir insérer une ligne. Avec ce nouveau code, à chaque fois que vous cliquerez dans C2, une nouvelle ligne s'insèrera... même si tel n'était pas votre souhait...
Salut tout le monde,
Ou peut être en ajoutant un événement si C2 n'est pas vide
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 3 And Target.Row > 1 Then 'concerne la colonne C après la ligne 1
If Target <> "" Then
Target.Offset(1, 0).EntireRow.Insert 'pour insérer une ligne complète sous la cellule
End If
End If
End Sub
Ou peut être en ajoutant un événement si C2 n'est pas vide
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 3 And Target.Row > 1 Then 'concerne la colonne C après la ligne 1
If Target <> "" Then
Target.Offset(1, 0).EntireRow.Insert 'pour insérer une ligne complète sous la cellule
End If
End If
End Sub