Bonjour,
j'ai créé ce code pour effectuer une copie des valeurs d'une ligne vers une autre feuille avant suppression des valeurs mais il y a une erreur 1004 sur la ligne For Each.
erreur définie par l'application ou par l'objet
Je ne vois pas à quoi correspond cette erreur
Merci pour une piste
Cordialement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 Dim NbCol, NbLig, ligne, ValIdent, f, sha, ligneEnreg, derlig Sub testConcatenerValeurs() Set f = Sheets("sheet") Set sh = Sheets("Fichepersonnel") Set sha = Sheets("Archives") ValIdent = sh.Range("AC3").Value 'valeur cherchée dans la feuille FichePersonnel cellule AC3 ligneEnreg = f.[A:A].Find(ValIdent, LookIn:=xlValues).Row 'référence de la ligne à traiter NbCol = f.Cells(1, Cells.Columns.Count).End(xlToLeft).Column ' nb de colonne à droite 'l'erreur est sur la ligne suivante "erreur définie par l'application ou par l'objet" For Each c In f.Range(Cells(ligneEnreg, 1), Cells(ligneEnreg, NbCol)) ' je défini la plage des données à concaténer Concat = c.Value 'valeur de Concat For i = 1 To NbCol 'boucle jusqu'à la dernière colonne Concat = Concat & "_" & c.Offset(ligneEnreg, i) 'concaténation avec la valeur précédente ligne = c.Row 'récupère la concaténation Next derlig = sha.Range("A" & Rows.Count).End(xlUp).Row + 1 'dernière ligne vide Sheets("Archives").Range("A" & derlig).Value = Concat ' feuille et colonne qui affichera le resultat ( ici colonne A) Next End Sub
Partager