Filecopy : copier fichier jpg selon critère

Bonjour à tous

Je fais appel à votre aide,

Je bloque sur ce code
Les photos sont dans le répertoire de l'employé portant son nom, le fichier porte aussi le nom de l'employé .jpg

Je souhaite lors de la sélection ... exemple type d'anniversaire (NAISSANCE) et mois (AVRIL) que les photos de chaque employés
soit copier dans le répertoire exemple (C:\ANNIVERSAIRE\AVRIL)
En résumé, je souhaite que les photos des employés dont l'anniversaire est le mois d'avril soit copier dans le répertoire C:\ANNIVERSAIRE\AVRIL

vu de l'userform

uf

Vu d'une tentative de code...

Private Sub btn_DA_Creer_Click()
    Dim lig As Integer
    Dim name As String
    Dim fname As String
    Set ws = Sheets("DB")
    Set name = ws.Range("B") 'colonne nom
    Set fname = ws.Range("C") 'colonne prénom
    lig = 2 'numéro de ligne

    'boucle qui permet de copier la photo de l'employé dans le répertoire de destination
    Do Until IsEmpty(ws.Range("A" & lig))
        If ws.Range("D" & lig).Value = UF_Anniversaire.cb_DA_Mois Then
            FileCopy "C:\2. Photo Employé\" & name & ", " & fname & "\" & name & ", " & fname & ".jpg", "c:\Anniversaire\" & cb_DA_Mois & "\" & name & ", " & fname & "\" & name & ", " & fname & ".jpg"
        End If
    lig = lig + 1
    Loop

End Sub

fichier test joint

Hello,

Si j'ai bien compris cette histoire de name & fname :

Private Sub btn_DA_Creer_Click()
    Dim lig As Integer
    Set ws = Sheets("DB")
    lig = 2 'numéro de ligne

    'boucle qui permet de copier la photo de l'employé dans le répertoire de destination
    Do Until IsEmpty(ws.Range("A" & lig))
        If ws.Range("D" & lig).Value = UF_Anniversaire.cb_DA_Mois Then
            FileCopy "C:\2. Photo Employé\" & ws.Range("B" & lig).Value & ", " & ws.Range("C" & lig).Value & "\" & ws.Range("B" & lig).Valu & ", " & ws.Range("C" & lig).Value & ".jpg", _
            "c:\2. Photo Employé\2. Anniversaire\" & cb_DA_Anniversaire & "\" & cb_DA_Mois & "\" & ws.Range("B" & lig).Value & ", " & ws.Range("C" & lig).Value & "\" & ws.Range("B" & lig).Value & ", " & ws.Range("C" & lig).Value & ".jpg"
        End If
    lig = lig + 1
    Loop

End Sub

Si le code est bon faudra que tu m'expliques pourquoi tu utilises :

ws.Range("D" & lig).Value

et tu ne le fais pas pour :

ws.Range("B" & lig).Value 
 ws.Range("C" & lig).Value

Bonjour Rag02700

name et fname (mes variables pour nom et prénom)

Je ne peux pas dire que le code est bon, c'est la ou je suis rendu dans mes tentatives pour arriver à faire fonctionner ce code....

Rechercher des sujets similaires à "filecopy copier fichier jpg critere"