Probleme macro boucle

Bonjour à tous,

Je vous ecris car j'ai un petit soucis,

Une de mes macro nommée Auto_Open est censer récupérer dans un outre fichier à son ouverture les 45 dernieres analyses et les copié dans Feuil1, or seul la derniere ligne est copiée. Je ne comprend pas pourquoi elle ne copie que la derniere ligne alors que je souhaite qu'elle copie les 45 dernieres.

Merci pour votre aide

Bonjour,

Elle ne transfère pas 45 lignes mais 45 colonnes ! Le nombre de lignes est variable, il correspond à la dernière journée.

Eléments éventuellement à revoir : nom de classeur qui ne correspond pas.

Auto_Open est une vieillerie datant d'avant les évènementielles, une telle procédure est à placer en évènementielle Workbook_Open dans le module ThisWorkbook.

Un conseil : sauf cas particuliers, 35 modules Standard, c'est 34 de trop !

Cordialement.

Merci Beaucoup pour votre aide et comment puis je changer la date par le nombre de ligne ?

Merci

Private Sub Workbook_Open()
    Dim ld%, tbl
    With Workbooks.Open("U:\LAB2008.xls").Worksheets(1)
        ld = .Range("B" & .Rows.Count).End(xlUp).Row - 44
        If ld < 1 Then Exit Sub
        tbl = .Range("A" & ld).Resize(45, 45).Value
    End With
    Workbooks("analyse automa.xlsm").Worksheets("Feuil1").Range("A3") _
     .Resize(45, 45).Value = tbl
    Workbooks("LAB2008.xls").Close False
End Sub

A mettre dans ThisWorkbook (supprimer l'Auto_Open).

Vérifier nom classeur...

Merci pour votre aide,

Cela fonctionne parfaitement

Bonne journée

Rechercher des sujets similaires à "probleme macro boucle"