Bonsoir
quand on a le nez dedans, on ne voit plus..
Le code suivant copie les photos d'un répertoire particulier, lié à un fournisseur vers un autre, un pot commun, de façon à les regrouper toytes au même endroit.
Répertoires
PHOTOS ET FT FOURNISSEURS>..PHOTOS DU SITE>PHOTOS PRIMAIRES>DN CENTRALISEES
mais aussi
PHOTS ET FT FOURNISSEURS >ARCADIE où se trouvent par exemple les phoros jpg que je veux déplacer vers le répertoire commun
1 2
| For i = PL To DL
chemin = Cells(i, 63).Value |
(clairement le chemin se construit avec la référence de la photo, ici en colonne 63)
Par exemple ici, le contenu de la cellule i,63, donc le chemin de la photo ou elle est au debut (ex pour la ligne 1163)
="\\Station-serveur\BOUTIQUE\PHOTOS & FT FOURNISSEURS\"&F1163&"\Photos\DN\"&BG1163
Ce qui donne la valeur
\\Station-serveur\BOUTIQUE\PHOTOS & FT FOURNISSEURS\ARCADIE\Photos\DN\HDF001.jpg
EN F on a le nom du REPERTOIRE dans lequel sont rangées les photos du fournisseur, exemple ARCADIE ici sous lequel ses photos sont rangées sous deux sous niveaux de répertoires, Photos>DN
ex:les photos de ARCADIE s'appellent toutes HDFxxx.jpg et sont rangées sous
BOUTIQUE\PHOTOS & FT FOURNISSEURS\ARCADIE\Photos\DN
En BG, on récupère le nom de la photo, ex HDF001.jpg, construit par le code article HDF001 et jpg: (=A1163&".jpg") où A1163 = HDF001
Puis on essaie de ranger la photo trouvée sous son répertoire de fournisseur dans le répertoire commun qui a été préalablement vidé
Pièce jointe 563268
.
Ça donne:
Dim chemin As String, nouveauchemin As String, fichier As String
Au préalable, on vide donc le dossier de destination avant de le remplir avec les nouvelles venues:
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
| Kill "\\Station-serveur\BOUTIQUE\PHOTOS & FT FOURNISSEURS\..PHOTOS DU SITE\PHOTOS PRIMAIRES\DN CENTRALISEES\*.*"
For i = PL To DL
'Chemin de stockage de la photo DN, détourée, recadrée, qu'il reste à regrouper dans un répertoire commun avec toutes les autres des autres fournisseurs; de là elle seront redimensionnées en masse et envoyées sur le site
chemin = Cells(i, 63).Value
' Pour info, Nommage de la photo
'fichier = Cells(i, 1) & ".jpg" 'En colonne 1 se trouve la racine du nom de la photo, ex HDF001 comme vu plus haut
'
nouveauchemin = "\\Station-serveur\BOUTIQUE\PHOTOS & FT FOURNISSEURS\..PHOTOS DU SITE\PHOTOS PRIMAIRES\DN CENTRALISEES\"
'MsgBox nouveauchemin & fichier
Dim Fso As Object
Set Fso = CreateObject("scripting.filesystemobject")
Fso.Copyfile chemin, "\\Station-serveur\BOUTIQUE\PHOTOS & FT FOURNISSEURS\..PHOTOS DU SITE\PHOTOS PRIMAIRES\DN CENTRALISEES\", Overwrite
'MsgBox fichier & "déplacé"
' End If
Next i
End sub |
Le bogue se situe à l'opération Fso
au deuxième passage, qd le répertoire est déjà vide, cette fois c'est sur la ligne Kill que ça plante..
Le répertoire de destination (DN CENTRALISEES) est bien vide mais le transfert n'a pas eu lieu.
Là, je ne vois pas ce que j'ai oublié,.; quelqu'un a une idée ?
Partager