Bonjour à tous,

Je bloque sur une partie de mon code.
J'ai réussi à faire un code pour récupérer un fichier Excel et copier /coller les colonnes C, D et M, et E, F et N à la suite à partir de la ligne 15.

Mais si ma ligne ne commence pas à la 15, comment pourrais-je faire ?

Par exemple les lignes que je veut copier commence à la 12 ou à la 19, cela dépend du fichier.
il y a d'autre ligne "non concerné au dessus" et je veut commencer à copier mes lignes dès que la valeur de la case est "C" comment pourrais-je faire ?
on ma proposer d'utiliser :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 For RowSyn = 1 To 800
 
    If Sheets(1).Cells(RowSyn, C).Value Like "C" Then
Mais je ne sai pas trop comment faire.

je vous met mon code ci-dessous.

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
48
Sub Choix_du_Fichier()
 
Dim FichierSource As Variant
 
Dim Source As Workbook
Dim Cible As Worksheet
 
 
    Set Cible = Sheets("Fin de Travaux réalisés")
    FichierSource = Application.GetOpenFilename("Fichiers (*.xlsx),*.xlsx")
 
    Application.ScreenUpdating = False
    Set Source = Workbooks.Open(FichierSource)
    With Source
         .Sheets("Fin de Travaux réalisés").Range("C12:D800,M12:M800").Copy Destination:=Cible.Range("A1")
    End With
 
    Dim Ligne_A As Integer
    Ligne_A = Range("A" & Rows.Count).End(xlUp).Row + 1
 
    With Source
         .Sheets("Fin de Travaux réalisés").Range("E12:E800").Copy Destination:=Cible.Range("A" & Ligne_A)
    End With
 
    Dim Ligne_B As Integer
    Ligne_B = Range("B" & Rows.Count).End(xlUp).Row + 1
 
    With Source
         .Sheets("Fin de Travaux réalisés").Range("F12:F800").Copy Destination:=Cible.Range("B" & Ligne_B)
    End With
 
    Dim Ligne_C As Integer
    Ligne_C = Range("C" & Rows.Count).End(xlUp).Row + 1
    With Source
         .Sheets("Fin de Travaux réalisés").Range("n12:n800").Copy Destination:=Cible.Range("C" & Ligne_C)
         .Close False
    End With
 
    'Supprime les doublons
    'Prend en compte les 3 colonnes
    Range("A1:C800").RemoveDuplicates Columns:=Array(1, 2, 3), Header:=xlNo
 
    Application.ScreenUpdating = True
 
    MsgBox "Fin de l'import !"
 
 
End Sub
Merci à vous