lizanne828
XLDnaute Nouveau
Bonjour,
Mon problème est dans le titre...
J'ai une macro dans un fichier de départ, qui doit copier toutes les lignes dont la colonne B est non vide, et qui va coller ces lignes à la suite d'autres lignes dans un autre fichier "TBG Vierge", feuille "Import" qui est ouvert.
Résultat des courses il ne me copie que la dernière ligne de la boucle, il ne semble pas garder en mémoire toutes les autres... Voici mon code:
Dim d As Integer
With ActiveSheet
'la colonne non vide doit être sur la colonne B
For d = .Range("B" & .Rows.Count).End(xlUp).Row To 1 Step -1
If .Range("B" & d).Value <> "" Then
.Rows(d).Copy
End If
Next d
End With
Windows("TBG vierge.xlsm").Activate
Sheets("Import").Activate
With ActiveSheet
Dim derligne As Integer
derligne = .Range("B999999").End(xlUp).Row
Dim l As Integer
l = derligne + 1
Rows(l).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Mon problème est dans le titre...
J'ai une macro dans un fichier de départ, qui doit copier toutes les lignes dont la colonne B est non vide, et qui va coller ces lignes à la suite d'autres lignes dans un autre fichier "TBG Vierge", feuille "Import" qui est ouvert.
Résultat des courses il ne me copie que la dernière ligne de la boucle, il ne semble pas garder en mémoire toutes les autres... Voici mon code:
Dim d As Integer
With ActiveSheet
'la colonne non vide doit être sur la colonne B
For d = .Range("B" & .Rows.Count).End(xlUp).Row To 1 Step -1
If .Range("B" & d).Value <> "" Then
.Rows(d).Copy
End If
Next d
End With
Windows("TBG vierge.xlsm").Activate
Sheets("Import").Activate
With ActiveSheet
Dim derligne As Integer
derligne = .Range("B999999").End(xlUp).Row
Dim l As Integer
l = derligne + 1
Rows(l).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False