Boucle
Bonjour,
j'ai du mal à transposer ces copies de valeurs que je dois faire X fois
Sheets("ab").Range("B3:AC3").Value = Sheets("data).Range("E9:AF9").Value
Sheets("ab").Range("B4:AC4").Value = Sheets("data").Range("E10:AF10").Value
Sheets("ab").Range("B5:AC5").Value = Sheets("data").Range("E11:AF11").Value
Sheets("ab").Range("B6:AC6").Value = Sheets("data").Range("E12:AF12").Value
Bonsoir auchandrive,
C'est pour une grosse commande de hamburgers !
Je te propose ce fichier Excel :
À l'ouverture du fichier, tu es sur la feuille "data", où j'ai déjà mis des données en E9:AF12.
Va sur la feuille vide "ab" ; Ctrl e ➯ travail effectué : copie faite en B3:AC6
Alt F11 pour voir la macro, puis revenir sur Excel
Si besoin, tu peux demander une adaptation.
Merci de me dire si ça te convient.
Cordialement,
dhany
Salut,
Déjà Merci Dhany pour avoir pris le temps de faire le fichier.
Je vais l'adapter mais imaginons que je reçois le même fichier tous les jours et qu'à chaque fois le nombre de lignes soit different à chaque fichier.
Au lieu d'avoir des données dans E9:AF12, j'ai un jour E9:AF20, un autre E9:AF15.
Comment dois je mettre ma variable?
Bonjour auchandrive,
Selon tes indications, c'est juste la dernière ligne qui est variable d'un fichier à un autre ;
ça commence toujours en ligne 9, pour les colonnes E à AF ; copie en ab!B3
Nouveau fichier Excel :
Si besoin, tu peux demander une adaptation.
Merci de me dire si ça te convient.
Sauf si tu as autre chose à demander, merci de passer le sujet en résolu.
dhany
Merci Dhany c'est parfait.
juste une dernière question, histoire de bien comprendre ce que j'écris en VBA.
pourquoi mettre un "." dans : dlig = .Cells(Rows.Count, 5).End(xlUp).Row ?
pour le "." devant le .Range("E9:AF" & dlig) je comprends que c'est lié au With Worksheets("data")
Sub Essai()
Dim dlig&: Application.ScreenUpdating = False
With Worksheets("data")
' dernière ligne utilisée, selon la colonne E
dlig = .Cells(Rows.Count, 5).End(xlUp).Row
If dlig > 8 Then .Range("E9:AF" & dlig).Copy Worksheets("ab").[B3]
End With
End Sub
auchandrive a écrit :pour le "." devant le .Range("E9:AF" & dlig) je comprends que c'est lié au With Worksheets("data")
Oui, c'est tout à fait exact !
(avec mes hamburgers, j'ai droit à un milkshake au chocolat gratuit ?)
@Sébastien : c'est bizarre : y'a des sujets comme celui-ci qui sont passés en résolu, mais au lieu de la coche ✓ habituelle, c'est noté « » devant le titre du sujet ! à quoi c'est dû, cette différence ?
PS : j'l'avais d'jà remarqué y'a longtemps, bien sûr ! si quelqu'un a une réponse, merci d'avance...
dhany