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
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....