VBA Erreur 1004

Salut à tous,

Voici une macro faite par mes soins qui cherche la dernière valeur en I d'un fichier dans la colonne F d'un autre fichier. Par la suite elle copie toutes les lignes en dessous de cette même valeur et est censé les coller à partir de la dernière ligne de la colonne D.

Hors j'ai une erreur 1004 sur la dernière ligne de mon code et je ne comprend pas pourquoi, jusqu'à la selection de la dernière cellule en D c'est OK, puis le collage c'est erreur 1004 ... La résolution je prend, mais j'aimerai surtout comprendre le pourquoi de ces erreurs 1004 (car j'en ai eu un paquet ... Par exemple je voulais supprimer la 1ère ligne, mais si je le fait, la recherche me renvoie directement une erreur 1004, pourquoi ?)

Sub A()
Workbooks("Fichier_1.xls").Sheets("Charge").Activate
Workbooks("Fichier_1.xls").Sheets("Charge").Columns("F").Find(Workbooks("Test3.xlsm").Sheets("BDD").Range("I1").End(xlDown)).Offset(1, 0).Activate
Workbooks("Fichier_1.xls").Sheets("Charge").Range(ActiveCell, ActiveCell.End(xlDown)).EntireRow.Copy
Workbooks("Test3.xlsm").Sheets("BDD").Range("D1").End(xlDown).Offset(1, 0).PasteSpecial (xlPasteValues)
End Sub

Merci beaucoup et bonne soirée !

PS : Je sais il y a des Activate, c'est déconseillé, mais je suis pas assez bon pour optimiser tout ça ^^

Salut Ergotamine,

j'ai déjà fait des trucs tordus mais là, , c'est du contorsionnisme neuronal sado-maso!

J'ai traduit comme j'ai pu!

Dim rCel As Range

iRow = Sheets("BDD").Range("I1").End(xlDown).Row
Set rCel = Columns("F").Find(what:=Sheets("BDD").Range("I" & iRow))
iCol = Cells(rCel.Row, Columns.Count).End(xlToLeft).Column
sCol1 = Split(Columns(iCol).Address(ColumnAbsolute:=False), ":")(1)
sCol2 = Split(Columns(iCol + 3).Address(ColumnAbsolute:=False), ":")(1)
iRow = Sheets("BDD").Range("D1").End(xlDown).Row + 1
Sheets("BDD").Range("D" & iRow & ":" & sCol2 & iRow).Value = Range("A" & rCel.Row & ":" & sCol1 & rCel.Row).Value

Bon, hé, j'ai trafiqué, hein! Tu rajouteras bien tes noms de fichier là où il faut.

Quand il n'y a rien, c'est Sheets("Charge")...

Bon amusement, ici, ça marche!

A+

Merci beaucoup Curulis57 !

Rechercher des sujets similaires à "vba erreur 1004"