Bonjour,
Je souhaiterais pouvoir copier un fichier à partir de PDM et le coller vers un disque local hors de PDM.
Ci-joint le bout de code VBA que j'ai commencé à faire, mais ça ne fonctionne pas. (voir message erreur).
Est-ce faisable ? Quelqu'un a-t-il une idée du problème ?
Merci à vous.
code_vba.png
Ci-joint le message d'erreur
Merci
message_erreur.png
Bonjour,
GetFileCopy ne sert qu'à rappatrier en local un fichier dans le coffre (équivalent à obtenir version).
Il faut utiliser la méthode CopyFile.
1 « J'aime »
Merci, effectivement...
Par contre je ne suis pas expert en VBA et je n'arrive pas à utiliser la méthode CopyFile.
voir ci-joint
copyfile.png
Le plus simple est de faire un simple copier/coller windows.
Dim Vault As New EdmVault5
Dim folder As IEdmFolder5
Dim file As IEdmFile5
Dim destfolder As String
Vault.LoginAuto "BllueBus", 0
Set file = vault.GetFileFromPath("D:\BE_Produit_01\Fichiers pour export\Donnnées Publiées\PDF\U100023AA-R01.pdf")
destfoler = "C:\Temp\"
FileCopy "D:\BE_Produit_01\Fichiers pour export\Donnnées Publiées\PDF\U100023AA-R01.pdf", "C:\Temp\U100023AA-R01.pdf"
Reste juste à mettre des variables pour gérer différents fichier et utiliser la méthode GetFile pour obtenir le fichier en local avant d'effectuer la copie.
1 « J'aime »
Ci-dessous un code fonctionnel.
Sub CopyFile()
Dim Vault As EdmVault5
Dim folder As IEdmFolder5
Dim file As IEdmFile5
Dim destfolder As String
Set Vault = New EdmVault5
Vault.LoginAuto "BlueBus", 0
Set folder = Vault.GetFolderFromPath("D:\BE_Produit_01\Fichiers pour export\Donnnées Publiées\PDF\")
Set file = folder.GetFile("U100023AA-R01.pdf")
file.GetFileCopy 0, "", 0
destfolder = "C:\PDF\"
FileCopy file.GetLocalPath(folder.ID), destfolder & file.Name
End Sub
3 « J'aime »