XL 2019 Doubler chaque ligne d'une colonne (Important SVP)

cloud7801

XLDnaute Nouveau
Bonjour,

Je me permet d'envoyer un message car au taff j'ai un excel comptable à faire, mais je bloque sur une commande.
En gros, ma colonne E reprensente les identifiants clients (il y en a 500), qui ressemble a sa :
188524
189736
187445
184297
....
Moi j'aimerais que cela devienne
188524
188524
189736
189736
187445
187445
184297
184297

Doubler chaque ligne, quelqu'un aurait une idée svp je bloque depuis ce matin

MERCIIIIIIII
 

Dudu2

XLDnaute Barbatruc
Salut @jacky97,
Ton interprétation est l'une des possibles et je ne t'en blâme absolument pas.
Ceci dit, dans son post, il cite clairement la colonne E avec exemple de doublement.
D'ailleurs c'est comme ça que je l'ai codé dans ma version.

L'essentiel étant que @cloud7801 considère que ton code règle son problème c'est donc parfait ;).
 

cloud7801

XLDnaute Nouveau
Serieux les gars merci vous assuré.
J'aurais une derniere autre question je vais essayer d'être claire

Alors comme vous lavais vu, dans ma colonne E j'ai maintenant mes information doublé.
Dans ma colonne F chaque ligne commence par "PLVT 03/2022 FACTURE CTR "
Comme j'ai 1120 ligne dans la colonne E (560 info double), j'ai 1120 ligne dans ma colonne F

Ce que j'aimerais, c'est que les informations qu'il y dans la colonne E, se place a la fin de la phrase "PLVT 03/2022 FACTURE CTR"

Par exemple :
E F
188453 PLVT 03/2022 FACTURE CTR 188453
188453 PLVT 03/2022 FACTURE CTR 188453
188517 PLVT 03/2022 FACTURE CTR 188517
188517 PLVT 03/2022 FACTURE CTR 188517
189164 PLVT 03/2022 FACTURE CTR 189164
189164 PLVT 03/2022 FACTURE CTR 189164

Et il faudrait cela sur les 1120 lignes, serieux si vous pourriez m'aider a finir ce tableau des enfer sans rentré manuellement les infos sa serait tip top !
Merci les gars
 

Dudu2

XLDnaute Barbatruc
Version @Jacky67: (ça y est je parle en son nom :eek:)
VB:
Sub insertLigne()
    Dim i&
    For i = Cells(Rows.Count, "e").End(xlUp).Row To 1 Step -1
       Cells(i, 5).Insert Shift:=xlDown
       Cells(i, 5).Resize(2).Value = Cells(i, 5).Offset(1).Value & " PLVT 03/2022 FACTURE CTR " & Cells(i, 5).Offset(1).Value
    Next
End Sub
 
Dernière édition:

Dudu2

XLDnaute Barbatruc
Version @Dudu2:
Code:
Sub Test_DoubleLignesColonne()
    Call DoubleLignesColonne(ActiveSheet, 5, " PLVT 03/2022 FACTURE CTR ")
End Sub

Sub DoubleLignesColonne(Wsh As Worksheet, NoColonne As Integer, AjoutChaine As String)
    Dim Tab1() As Variant
    Dim Tab2() As Variant
    Dim NbLignes As Long
    Dim i As Long
    Const NbLignesTitre = 0
  
    With Wsh
        'Défiltrer pour ne pas fausser le xlUp avec des lignes de fin filtrées
        If Not .AutoFilter Is Nothing Then .AutoFilter.ShowAllData
        NbLignes = .Cells(Rows.Count, NoColonne).End(xlUp).Row
      
        Tab1 = .Cells(NbLignesTitre + 1, NoColonne).Resize(NbLignes - NbLignesTitre).Value
        ReDim Tab2(1 To UBound(Tab1, 1) * 2, 1 To 1)
      
        For i = 1 To UBound(Tab1, 1)
            Tab2(i * 2 - 1, 1) = Tab1(i, 1) & AjoutChaine & Tab1(i, 1)
            Tab2(i * 2, 1) = Tab2(i * 2 - 1, 1)
        Next i
      
        .Cells(NbLignesTitre + 1, NoColonne).Resize((UBound(Tab2, 1))).Value = Tab2
    End With
End Sub
 

Jacky67

XLDnaute Barbatruc
Version @Jacky67: (ça y est je parle en son nom :eek:)
VB:
Sub insertLigne()
    Dim i&
    For i = Cells(Rows.Count, "e").End(xlUp).Row To 1 Step -1
       Cells(i, 5).Insert Shift:=xlDown
       Cells(i, 5).Resize(2).Value = Cells(i, 5).Offset(1).Value & " PLVT 03/2022 FACTURE CTR " & Cells(i, 5).Offset(1).Value
    Next
End Sub
Re..:mad:;);)
Comme pour JM et après avoir consulté ma conseillère juridique (tu remarqueras le féminin, pour rester dans les quotas)
je m'élève fortement contre cette usurpation de code strictement confidentiel
-Contre la falsification des n° de facture
-Contre le rajout de ligne
-D'avoir émis un doute sur le fonctionnement de mon code
Je vais donc de ce pas; contacter les instances juridiques compétentes
:);)😇
 

Dudu2

XLDnaute Barbatruc
mais juste une question, la phrase "'Défiltrer pour ne pas fausser le xlUp avec des lignes de fin filtrées" je dois aussi la copier dans la macro?
C'est un commentaire (commence par une simple quote).
Les commentaires font partie du code et permettent d'expliquer ce qu'on fait et diverses choses.
En l'occurrence il explique qu'un xlUp n'est pas insensible aux filtres et donc qu'il vaut mieux dé-filtrer la feuille avant de faire ça.
 

cloud7801

XLDnaute Nouveau
RE JACKY ET DUDU,
J'ai essayer le code de DUDU, il y a quelques imperfection, mais avec des copier coller et des changements, sa passe, donc merci a vous.
ps: en gros, au lieu de coller la ligne E qu'à la fin de "PLVT 03/2022 FACTURE CTR", il la coller au début et a la fin "188453 PLVT 03/2022 FACTURE CTR 188453"
et en exécutant le code, ça double la ligne, j'ai donc utiliser une version ou je n'avais pas préalablement doubler avec le premier code, et haleluhia

En gros, le seul bémol qu'il reste, c'est qu'il y a "188453 PLVT 03/2022 FACTURE CTR 188453", il faudrais "PLVT 03/2022 FACTURE CTR 188453"

Mais c'est un petit détail, un granD MERCI
 

Jacky67

XLDnaute Barbatruc
RE JACKY ET DUDU,
J'ai essayer le code de DUDU, il y a quelques imperfection, mais avec des copier coller et des changements, sa passe, donc merci a vous.
ps: en gros, au lieu de coller la ligne E qu'à la fin de "PLVT 03/2022 FACTURE CTR", il la coller au début et a la fin "188453 PLVT 03/2022 FACTURE CTR 188453"
et en exécutant le code, ça double la ligne, j'ai donc utiliser une version ou je n'avais pas préalablement doubler avec le premier code, et haleluhia

En gros, le seul bémol qu'il reste, c'est qu'il y a "188453 PLVT 03/2022 FACTURE CTR 188453", il faudrais "PLVT 03/2022 FACTURE CTR 188453"

Mais c'est un petit détail, un granD MERCI
Re..
Par certain d'avoir compris le but de la manœuvre
Essaye ceci
VB:
Sub insertLigne()
    Dim i&
    For i = Cells(Rows.Count, "e").End(xlUp).Row To 1 Step -1
      Cells(i, "f") = Cells(i, "f") & Cells(i, "e")
      Range("e" & i & ":f" & i).Copy: Cells(i, 5).Insert Shift:=xlDown
    Next
End Sub

Si ce n'est pas cela donne un classeur exemple avec les lignes d'origine et les lignes avec le résultat souhaité
 

Statistiques des forums

Discussions
312 502
Messages
2 089 047
Membres
104 011
dernier inscrit
dfr