Copie d'une colonne de plusieurs classeur dans un seul classeur

Lynk Zel

XLDnaute Junior
Bonjour le forum et bonne année 2009 :D

J'aimerais avoir une macro dans un classeur (TOTO) qui :
- copie une colonne et plusieurs lignes (B1 jusqu'à B52) de tous les classeurs Excel(1,2,3,4,5...) qui se trouveront dans un dossier particulier.
- colle ces cellules dans le classeur TOTO les une à côtés des autres en commançant par la colonne B, puis la colonne C et ainsi de suite (les cellules de 1 viendront se copier en B, les cellules de 2 viendront se copier en C, etc.0..).
- garde aussi la mise en forme de chaque cellules copiées de chaque classeurs dans TOTO.

voilà, c'est tout, si vous avez des questions, je suis dispo pour répondre.

merci
@+
 

skoobi

XLDnaute Barbatruc
Re : Copie d'une colonne de plusieurs classeur dans un seul classeur

Bonjour,

Voici une macro à adapter à ton cas (dans le classeur toto):

Code:
Sub recupe()
  Dim Classeur As Workbook, ColSuiv As Long
  With Application.FileSearch
    .LookIn = "[B]C:\Mes Documents[/B]"
    .SearchSubFolders = False
    .Filename = "*.xls"
    .FileType = msoFileTypeExcelWorkbooks
    If .Execute > 0 Then
      For i = 1 To .FoundFiles.Count
        Set Classeur = GetObject(.FoundFiles(i))
        ColSuiv = Range("IV1").End(xlToLeft).Column + 1
        Classeur.Sheets(1).Range("B1:B52").Copy ThisWorkbook.Sheets(1).Cells(1, ColSuiv)
      Next i
    End If
  End With
End Sub

Cela cherche tous les fichiers excel dans C:\Mes Documents et fait ce que tu demandes.
 

Discussions similaires

Statistiques des forums

Discussions
312 699
Messages
2 091 110
Membres
104 764
dernier inscrit
lelefoot