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

Insérer 2 lignes entre chaques lignes sélectionnées

  • Initiateur de la discussion Initiateur de la discussion Olibxl
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

O

Olibxl

Guest
Bonjour,

Après plusieurs recherche sur le net, j'ai trouvé le code VBA(repris ci-dessous) pour me permettre d'insérer 2 lignes entre chaques lignes sélectionnées et d'y inscrire dans la première cellule un "X".
Pour le tester, j'ai pris un ancien fichier de données et cela fonctionne parfaitement.

Seulement quand je recopie ce code dans un nouveau tableur avec un "beau" tableau mis en forme cette macro ne fonctionne pas... Pourquoi?

J'ai alors testé de copier mon "beau" tableau dans le fichier qui m'a servi de test et là cela fonctionne...J'ai donc décider de supprimer toutes les données autres que celles du "beau" tableau nouvellement collé et là cela ne fonctionne de nouveau plus...

Quelqu'un peut-il m'aider? je ne suis absolument pas informaticien...

Le code est:
Code:
Sub Insert2lignes()
Dim x As Integer
For x = Range("A65536").End(xlUp).Row To 1 Step -1
If Not Intersect(Range("A" & x), Selection) Is Nothing Then
Rows(x).Insert Shift:=xlDown

Cells(x, 1) = "X"
Rows(x).Insert Shift:=xlDown

Cells(x, 1) = "X"

End If
Next
End Sub
 
Re : Insérer 2 lignes entre chaques lignes sélectionnées

Bonjour Olibxl, le Forum

Il est évident que sans fichier exemple, il est difficile de t'aider.

En PJ un bout de fichier qui fonctionne avec ton code.
Le fichier avec lequel tu as ton problème ne doit pas avoir la même structure, merci de nous le joindre sans données confidentielles.

@+
 

Pièces jointes

Re : Insérer 2 lignes entre chaques lignes sélectionnées

Bonjour xhudi69,

Merci beaucoup pour ta réponse. En fait entre hier et aujourd'hui la seule solution que j'ai trouvée pour faire fonctionner ce code est de remplir la colonne "A" avec une lettre et ce quelques lignes après mon tableau que voici en PJ.
 

Pièces jointes

Re : Insérer 2 lignes entre chaques lignes sélectionnées

Re Olibxl, le Forum

Voilà, avec la boucle dans la bonne colonne et une petite modif du code, si tu click dans la colonne B et appuie sur le bouton, tu rajoute 2 lignes.

Si cela te convient.

@+
 

Pièces jointes

Re : Insérer 2 lignes entre chaques lignes sélectionnées

Merci! Merci! Merci!

Cela me convient parfaitement, j'ai tout de même remodifié le code pour que le "x" apparaisse dans la colonne 1 et cela fonctionne
Encore une fois merci!

Si et seulement si je peux encore un tout petit peu abuser de ton temps, comment écrire le code pour que la couleur de fond des lignes insérées soit de couleur vert claire? (uniquement les lignes contenant en colonne A un "X" forcément)?

Olivier😱
 
Re : Insérer 2 lignes entre chaques lignes sélectionnées

Encore une fois merci.

J'ai modifié ton dernier code pour que 2 lignes s'insères entre chaques lignes de la sélection.
Du coup, toute la sélection se colore en vert, hors j'aurais aimé que seule les lignes insérées soient de fond vert.
Est-ce possible?
Faut-il peut-etre exécuter une deuxième macro sélectionnant que les lignes contenant le "x" dans la colonne A?

Si pas possible, ce n'est pas grave je ferai un tri sur la colonne A et sélectionnerai que les "X", les colorerai manuellement.

Voici le fichier remanié
Bien à toi,
 

Pièces jointes

Re : Insérer 2 lignes entre chaques lignes sélectionnées

Re:

je comprends mal ta question, si tu selectionnes 2 cellules qui se suivent dans la colonne B les deux lignes vertes vont bien s'inserrées.

Peut-être veut-tu seulement les cellules avec X colorées en vert, dans ce cas, voir le fichier joint.

@+
 

Pièces jointes

Re : Insérer 2 lignes entre chaques lignes sélectionnées

Dans le fichier joint, j'ai activer la macro qui m'intéresse en sélectionnant plusieurs lignes de mon tableau (p.ex. 4 lignes comprenant "test" dans la colonne B).
En activant la macro, 2 lignes vertes entre chaque lignes sélectionnées s'insèrent comme je le veux, parfait.

Mon dernier souci est que les lignes de départ avant activation de la macro doivent rester elles non colorées comme au départ.
Mon but final est de sélectionner toutes les lignes de mon tableau en une fois et lui appliquer la macro de sorte d'avoir une insertion de 2 lignes vertes avec un x en colonne A, et ce, entre chaque ligne.

Dans le fichier exemple, la macro a coloré toutes les lignes de départ (ligne contenant "test" devraient idéalement rester sans colore de fond).

En tout cas merci beaucoup pour toute l'aide que tu m'apportes!

Merci,
Olivier
 

Pièces jointes

Re : Insérer 2 lignes entre chaques lignes sélectionnées

TOPISSIM !! Bravo et surtout grand merci xhudi69.

Oui c'est bien cela que je cherchais à faire.
Ton code fonctionne très bien mais il lui manque un "x" en colonne A de la deuxième ligne insérée😕
Dans ton code, je ne sais pas ou copier une seconde fois le code suivant
Code:
Cells(x, 1) = "X"

Merci 😛

Olivier 😀
 
Re : Insérer 2 lignes entre chaques lignes sélectionnées

Bonsoir xhudi69,

SUPER! problème et souhaits entièrement résolu, cela fonctionne très bien.
Rustique ou pas je ne puis le dire, mais en revanche ça fonctionne ca c'est sur!

Merci beaucoup et bonne soirée.😉
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
526
Réponses
23
Affichages
665
Réponses
5
Affichages
907
Réponses
14
Affichages
484
Réponses
4
Affichages
675
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…