Bonjour à tous,

Cela faitt plusieurs jours que je parcours ce forum et d'autres pour trouver une solution à mon problème mais je n'arrive pas (malgré de nombreux essai) à adapter mon code avec ce que j'ai pu trouver jusqu'à présent...

Mon problème est simple :

Récupérer une colonne dans une feuille la coller dans une autre et appliquer les formules des colonnes adjacentes jusqu'à la fin de la colonne que l'on vient de coller. Un peu plus détaillé je copie la colonne C en valeur à partir de C4 jusqu'à Cx (x étant le nombre de ligne qui change à chaque fois). Ensuite je veux reproduire ce qui est fait avec la poignée de recopie pour les colonnes A:B et D:L.

Voici le code que j'ai fait mais qui ne fonctionne pas...

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Sub Analyse_Portefeuille()
 
Dim Extract As Worksheet
Dim Pick As Worksheet
Dim Cel As Range
Dim Colonne As Integer
Dim DerLigC As Range
 
 
Set Extract = Worksheets("Extract_Jump")
Set Pick = Worksheets("Top_Picks")
 
Extract.Select
Set Cel = Cells.Find(what:="Code ISIN", LookIn:=xlValues, lookat:=xlWhole)
If Not Cel Is Nothing Then
    Cells(1, Cel.Column).Resize(Cells(Rows.Count, Cel.Column).End(xlDown).Row).Select
Else
    MsgBox "Pas trouvé le code ISIN "
    Exit Sub
  End If
Selection.Cut
Columns(1).Insert
 
Range("A2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Worksheets("Top_Picks").Activate
Range("C4").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
 
DerLigC = Worksheets("Top_Picks").Range("C4" & Rows.Count).End(xlUp).Row
'DerLig = Pick.Cell(Pick.Columns(3).Cells.Count, 3).End(xlUp).Row
 
'With DerLigC = Range("C" & Rows.Count).End(xlUp).Row
    'End With
 
Range("A4").Select
Selection.AutoFill Destination:=Range("A4:A" & DerLigC)
 
Range("D4:L4").Select
Selection.AutoFill Destination:=Range("E4:M" & DerLigC)
Range("E4:M" & DerLigC).Select
 
 
 
End Sub
Désolé je n'arrive pas à trouver comment mettre les balises...

En fait le problème survient à la ligne Selection.AutoFill Destination:=Range("A4:A" & DerLigC). Le seul problème est que je n'arrive pas à formaliser la référence de la dernière ligne non vide dans l'objet range pour la fonction autofill... J'ai laissé les commentaires que j'avais mit qui correspondent à d'autres essai infructueux également.

Merci de votre aide, n'hésitez pas à me dire s'il faut plus de précisions.

Romain