Copie d'un fichier de Sharepoint en le renomant

Fermé
DomDI_85250 Messages postés 5 Date d'inscription mardi 29 septembre 2020 Statut Membre Dernière intervention 23 avril 2021 - Modifié le 29 sept. 2020 à 14:09
yg_be Messages postés 23233 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 septembre 2024 - 30 sept. 2020 à 09:01
Bonjour,

J'ai préparé un fichier avec macro en local, pas de soucis, tout fonctionne.
Voici un extrait de la macro :

Dim Chemi As String
Dim CheminS1 As String
Dim CheminS2 As String
Dim FeSem As String
Dim FeSemP1 As String

FeSem = "S" & Format(Now(), "ww", vbMonday, vbFirstFourDays) + 1
FeSemP1 = "S" & Format(Now(), "ww", vbMonday, vbFirstFourDays) + 2

Chemi = Workbooks(ActiveWorkbook.Name).Path & "\"
CheminS1 = Chemi & FeSem & ".xlsm"
CheminS2 = Chemi & FeSemP1 & ".xlsm"
FileCopy CheminS1, CheminS2


Je suis maintenant obligé de le mettre sur un OneDrive pro, donc connecté à Sharepoint.
J'ai donc changé une ligne :
Chemi = Workbooks(ActiveWorkbook.Name).Path & "\"

j'ai mis :
Chemi = Workbooks(ActiveWorkbook.Name).Path & "/"</


Cela ne fonctionne pas :
"Erreur d'exécution '52' :
Nom du numéro de fichier incorrect

Si je remplace
Chemi = Workbooks(ActiveWorkbook.Name).Path & "/"

par Chemi="D:\OneDrive - MonDrive\Documents Pro\Clients\....
cela fonctionne, mais le problème est que ce fichier doit servir sur différents postes donc il faut bien que j'utilise Workbooks(ActiveWorkbook.Name).Path

J'ai essayé

Dim FSO As Object
Set FSO = CreateObject("scripting.filesystemobject")
FSO.copyfolder Source:=CheminS1, Destination:=CheminS2

même message d'erreure

Si je mets
Workbooks.Open (CheminS1)
mon fichier s'ouvre bien

j'ai également essayé de remplacer mon CheinS2 par :

CheminS2 = Mid(Chemi, 7) & FeSemP1 & ".xlsm"
CheminS2 = Replace(CheminS2, "/", "\")


J'ai bien le résultat voulu :
'\\MonSite-my.sharepoint.com\personal\mon_identifiant\emplacement_du_dossier\sous_dossier....

Mais toujours même erreur

Est ce que quelqu'un aurait une idée pour la solution ?

Merci d'avance et bonne journée
A voir également:

6 réponses

yg_be Messages postés 23233 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 septembre 2024 Ambassadeur 1 538
29 sept. 2020 à 15:08
bonjour,
es-tu certain du message d'erreur: "Nom du numéro de fichier incorrect"?
c'est bien de montrer un code qui ne fonctionne pas.
c'est mieux d'expliquer ce que tu veux réaliser.

où va se trouver le fichier local sur les autres postes? comment sera-t-il ouvert, à partir de quel endroit (le dossier local OneDrive?)?

c'est bien le fichier contenant la macro que tu veux copier? utilise alors
thisworkbook.path
.
ne penses-tu pas utile de nous montrer ce que retourne
thisworkbook.path
?

as-tu envisagé de faire "save as" au lieu d'une copie?
0
DomDI_85250 Messages postés 5 Date d'inscription mardi 29 septembre 2020 Statut Membre Dernière intervention 23 avril 2021
29 sept. 2020 à 16:49
Pour le message, j'en suis certain.

Toutes les semaines, 8 nouveaux fichiers vont être créés (avec le numéro de semaine à l'intérieur du nom).
Le dossier sera dans un onedrive local mais partagé avec les autres colaborateurs (là ce n'est pas moi qui m'occupe de la partie OneDrive)
et ce n'est pas le fichier qui contient la macro qui est copié.

Workbooks(ActiveWorkbook.Name).Path & "/" retourne bien htpps://Monserveur-my.sharepoint.com/personal/....

Mais comme je le disais dans mon premier message, je le transforme ensuite en
CheminS2 = Mid(Chemi, 7) & FeSemP1 & ".xlsm"
CheminS2 = Replace(CheminS2, "/", "\")
pour enlever le htpps:
0
yg_be Messages postés 23233 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 septembre 2024 1 538
29 sept. 2020 à 17:35
je ne comprends pas pourquoi tu obtiens un chemin https alors que tu as ouvert le fichier à partir d'un dossier OneDrive local.
0
DomDI_85250 Messages postés 5 Date d'inscription mardi 29 septembre 2020 Statut Membre Dernière intervention 23 avril 2021
29 sept. 2020 à 16:52
Et j'ai bien pensé au SaveAs mais je préfèrerai faire une copie, cela éviterai d'ouvrir tout les fichiers inutilement
0
yg_be Messages postés 23233 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 septembre 2024 Ambassadeur 1 538
29 sept. 2020 à 17:12
Merci de nous informer quand tu postes également dans un autre forum:
https://forum.excel-pratique.com/excel/copie-d-un-fichier-de-sharepoint-en-le-renomant-146876
Ne penses-tu pas que c'est plus respectueux?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
DomDI_85250 Messages postés 5 Date d'inscription mardi 29 septembre 2020 Statut Membre Dernière intervention 23 avril 2021
29 sept. 2020 à 17:14
Je ne savais pas que les 2 forums étaient liés
Désolé
0
yg_be Messages postés 23233 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 septembre 2024 1 538
29 sept. 2020 à 17:22
les forums ne sont pas du tout liés.
trouves-tu respectueux de nous demander de l'aide sans nous informer que tu en as demandé ailleurs?
0
DomDI_85250 Messages postés 5 Date d'inscription mardi 29 septembre 2020 Statut Membre Dernière intervention 23 avril 2021
30 sept. 2020 à 07:36
Bonjour,

Pour info, le
thisworkbook.path
obtient le même résultat que
Workbooks(ActiveWorkbook.Name).Path
c'est à dire une adresse https://

Pour l'instant, j'ai contourné le problème :
Dans une feuille Paramêtres qui existait déjà, j'ai créé un tableau avec un nom d'utilisateur, nom PC et chemin local.
Avant toute première utilisation sur un nouveau poste, les collaborateurs devrons renseigner ses 3 colonnes (Nom Ordi et nom utilisateur par une petite macro)
Ensuite, lors de la création des fichiers, la macro va chercher l'info nécessaire dans ce tableau.
C'est une solution un peu plus contraignante mais qui fonctionne en attendant de trouver la solution.

Bonne journée
0
yg_be Messages postés 23233 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 septembre 2024 1 538
30 sept. 2020 à 09:01
je ne comprends pas pourquoi tu obtiens un chemin https alors que tu as ouvert le fichier à partir d'un dossier OneDrive local.
0