Assembler plusieurs feuilles

ICE_SACCO

XLDnaute Junior
Bonjour,

Je cherche à assembler plusieurs feuilles en récupérent chaque ligne pour les mettre dans une feuille commune.

Mon problème cela me récupère que une ligne par feuil même s'il y en a plusieurs. Et j'aimerai aussi que pour chaque ligne il y est une mise en page cadrillage

'Début assemblage

Dim i As Long, j As Long 'Déclare deux variables numériques
Worksheets("Portefeuille Projet").Select 'Active la feuille nommée SYNTHESE
'Passe chaque feuille en revue en partant de la 3eme jusqu'à n
For i = 3 To Worksheets.Count - 1 'WorkSheets.Count donne le nombre total de feuilles moins la dernière
'j prend la valeur du numéro de ligne de la 1ere cellule vide de la colonne A
'A chaque passage dans la boucle j sera incrémentée de 1 du fait de l 'inscription des nouvelles données
j = Range("A65536").End(xlUp).Row + 1
With Worksheets(i)
'Sur la ligne déterminée par j, la 1ere cellule prend la valeur de la cellule A1 de la feuille dont l'index est égal à i
Cells(j, 1).Value = .Range("A3").Value
Cells(j, 2).Value = .Range("B3").Value
Cells(j, 3).Value = .Range("C3").Value
Cells(j, 4).Value = .Range("D3").Value
Cells(j, 5).Value = .Range("E3").Value
Cells(j, 6).Value = .Range("F3").Value
Cells(j, 7).Value = .Range("G3").Value
Cells(j, 8).Value = .Range("H3").Value
Cells(j, 9).Value = .Range("I3").Value
Cells(j, 10).Value = .Range("J3").Value
Cells(j, 11).Value = .Range("K3").Value
Cells(j, 12).Value = .Range("L3").Value
Cells(j, 13).Value = .Range("M3").Value
Cells(j, 14).Value = .Range("N3").Value
Cells(j, 15).Value = .Range("O3").Value
Cells(j, 16).Value = .Range("P3").Value
Cells(j, 17).Value = .Range("Q3").Value
Cells(j, 18).Value = .Range("R3").Value
Cells(j, 19).Value = .Range("S3").Value
Cells(j, 20).Value = .Range("T3").Value
Cells(j, 21).Value = .Range("U3").Value
Cells(j, 22).Value = .Range("V3").Value
Cells(j, 23).Value = .Range("W3").Value
Cells(j, 24).Value = .Range("X3").Value
Cells(j, 25).Value = .Range("Y3").Value
Cells(j, 26).Value = .Range("Z3").Value
Cells(j, 27).Value = .Range("AA3").Value
Cells(j, 28).Value = .Range("AB3").Value
Cells(j, 29).Value = .Range("AC3").Value
Cells(j, 30).Value = .Range("AD3").Value
Cells(j, 31).Value = .Range("AE3").Value
Cells(j, 32).Value = .Range("AF3").Value
Cells(j, 33).Value = .Range("AG3").Value
Cells(j, 34).Value = .Range("AH3").Value
Cells(j, 35).Value = .Range("AI3").Value
Cells(j, 36).Value = .Range("AJ3").Value
Cells(j, 37).Value = .Range("AK3").Value
Cells(j, 38).Value = .Range("AL3").Value
Cells(j, 39).Value = .Range("AM3").Value
End With
Next 'Passe à la feuille suivante

Merci d'avance
 

Dranreb

XLDnaute Barbatruc
Si vous effacez toutes les lignes d'abord, inutile de faire j = Range("A1000").End(xlUp).Row + 1
j = 2 ça suffit.
Je ne vois pas ce qui pourrait expliquer ce que vous dites.
À moins que les dernières lignes à récupérer peuvent ne rien comporter en colonne A.
Mettez un MsgBox .[A3].Resize(Nblignes, 45).Address(0, 0, xlA1, True) devant pour vérifier que vous récupérer bien ce qu'il faut.
 

ICE_SACCO

XLDnaute Junior
Merci je ne connaissais pas MsgBox .[A3].Resize(Nblignes, 45).Address(0, 0, xlA1, True)
, il saute bien des feuilles. La raison c'est de ma faute en A j'ai rajouté une colonne et si vide il passe à la feuille si pas d'autre ligne rempli même si B,C et autre de la ligne rempli...
 

Discussions similaires

Statistiques des forums

Discussions
312 094
Messages
2 085 238
Membres
102 831
dernier inscrit
ayal