Probleme avec PATH

Signaler
Messages postés
255
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
1 décembre 2020
-
Messages postés
13415
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
3 décembre 2020
-
Bonjour,
je voudrais remplacer une ligne de mon prog afin de pouvoir le faire fonctionner sur plusieurs PC sans pour cela devoir changer la programmation VBA.

actuellement, j'ai :
NomDossier = Application.InputBox("ArchivageFactures:", "Année ?")

Chemin = "C:\Users\bs382\Desktop\ArchivageFactures\" & NomDossier & "\"
et cela fonctionne !
j'aimerais remplacer le chemin par quelque chose dans le genre de :

Chemin = ThisWorkbook.Path \ Desktop \ ArchivageFactures \ NomDossier \ ""
mais écrit comme cela ça ne fonctionne pas.
Pouvez vous m'aider ?
d'avance je vous en remercie.
prenez soin de vous !

4 réponses

Messages postés
15434
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
3 décembre 2020
1 414
Bonjour,
Chemin = ThisWorkbook.Path \ Desktop \ ArchivageFactures \ NomDossier \ ""

Apres
ThisWorkbook.Path
mettre un espace & un espace et le reste entre "".
Merci beaucoup,
je vais essayer . Si je comprends bien, je dois mettre chaque expression entre "" ?
cela donnerait :
Chemin = ThisWorkbook.Path & \ "Desktop" \ "ArchivageFactures" \" NomDossier" \ ""

je vais essayer de cette façon.
Merci
Messages postés
255
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
1 décembre 2020
23 > Simkmil
Re-Bonjour
et ça ne fonctionne pas encore ! cette fois, j'ai une erreur "13" incompatibilité de type !
je ne comprends pas .

Merci
Messages postés
7108
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
3 décembre 2020
583
Bonjour,

comme ceci:

ThisWorkbook.Path & " \ Desktop \ ArchivageFactures \"  &  NomDossier  & " \ "

Messages postés
15177
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
2 décembre 2020
625
Bonsoir simkmil.

Bonsoir f et le pivert

Pour les prochaines fois où tu posteras du code, merci de lire jusqu'au bout et d'appliquer la petite explication disponible à cette adresse https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Cet outil permet entre autre une lecture plus facile pour celui qui pourrait répondre et donc lui donner plus envie de lire ton sujet plutôt qu'un autre.

Mais ça aide aussi le demandeur, et oui!

En VBA un chemin, c'est une string, et une string c'est rouge.

Quand ton code est posté comme ça
NomDossier = Application.InputBox("ArchivageFactures:", "Année ?")

Chemin = "C:\Users\bs382\Desktop\ArchivageFactures\" & NomDossier & "\"
et cela fonctionne !
j'aimerais remplacer le chemin par quelque chose dans le genre de :

Chemin = ThisWorkbook.Path \ Desktop \ ArchivageFactures \ NomDossier \ ""

Il est difficile de voir ce qui coince.

Alors que là
NomDossier = Application.InputBox("ArchivageFactures:", "Année ?")

Chemin = "C:\Users\bs382\Desktop\ArchivageFactures\" & NomDossier & "\"
et cela fonctionne !
j'aimerais remplacer le chemin par quelque chose dans le genre de :

Chemin = ThisWorkbook.Path \ Desktop \ ArchivageFactures \ NomDossier \ ""


on voit de suite que ton chemin en ligne 7 (oui ça met des numéros de lignes aussi, ce qui est pratique) n'est pas rouge.

Et pour ceci
Chemin = ThisWorkbook.Path & \ "Desktop" \ "ArchivageFactures" \" NomDossier" \ ""


les \ ne sont pas dans "le rouge"


Par contre toute la seconde partie du chemin proposé par le Pivert est rouge (même s'il a laissé trainé quelques espaces en rab ;) )
ThisWorkbook.Path & " \Desktop\ArchivageFactures\"  &  NomDossier  & "\ "


Il faut être attentif construit des string comme ça, un " mal placé et c'est la cata.

J'ai pas fait de VBA depuis bien longtemps, mais il me semble que dans l'éditeur, une string est rouge aussi, ça fait partie des aides que l'éditeur apporte (pas beaucoup en VBA (: )

Quand j'étais petit, la mer Morte n'était que malade.
George Burns
Messages postés
13415
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
3 décembre 2020
750
bonjour, le plus simple et le plus fiable, c'est de te positionner par rapport au dossier où se trouve le classeur contenant la macro.
est-ce possible?
tu nous montres où tu veux aller: C:\Users\bs382\Desktop\ArchivageFactures
tu ne nous montres pas où se trouve le classeur contenant la macro.
Messages postés
255
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
1 décembre 2020
23
merci, je ne comprends pas fort bien : vous montrer où je veux aller ?
je voulais aller au même endroit que mon "C:\Users...
mais sur un autre ordinateur.
En attendant, j'ai solutionné en mettant l'adresse réelle du second PC
merci encore.
Messages postés
13415
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
3 décembre 2020
750 >
Messages postés
255
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
1 décembre 2020

tu ne nous montres pas où se trouve le classeur contenant la macro.
Messages postés
13415
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
3 décembre 2020
750 >
Messages postés
255
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
1 décembre 2020

peux-tu marquer la discussion comme résolue?