Probleme nom de fichier avec apostrophe

  • Initiateur de la discussion Initiateur de la discussion papapaul
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

papapaul

XLDnaute Impliqué
🙂 Rebonjour Forum,
Je suis en train de terminer un de mes projets.
Dans un répertoire (ici AA),
J'ai plusieurs fichiers à page unique et un fichier comptage
qui me fait une récap somme de tous ces fichiers avec les noms
en colonne B.
J'ai un problème quand il y a un ' dans le nom des fichiers.
Avec AAM – L'informatique j'ai un message d'erreur colonne C,
Avec AAA - Ouvrages d'initiation ou AAH - (pas d'intitulé), c'est OK.
Doit y avoir un problème quelque part peut-être ici ?🙄
With Fichier
strDossier = Left(.Path, Len(.Path) - Len(.Name))
strShortDossier = Left(.ShortPath, Len(.ShortPath) - Len(.ShortName))
End With
Je suis incapable de trouver la faille.😡
Comme en vrai, des fichiers qui ont un nom qui
commence par L'quelquechose j'en ai au moins 200.
Je me vois mal aller les modifier 1 par 1 dans l'explorateur.
Si quelqu'un a une idée, merci d'avance.
Bonne journée à tous.
 

Pièces jointes

Re : Probleme nom de fichier avec apostrophe

Il s'agit d'un problème de double quote ('') pour remplacer une apostrophe isolée dans la "requête"
Autrement dit
Code:
         sStr = Replace(Fichier.Name, "'", "''")
         .Range("C" & CptLig) = "='" & strShortDossier & _
                  "[" & sStr & "]" & NomFeuille & "'!R2C2"
doit remplacer
Code:
          .Range("C" & CptLig)= "='" & strShortDossier & _
                   "[" & Fichier.ShortName & "]" & NomFeuille & "'!R2C2"
 
Dernière édition:
Re : Probleme nom de fichier avec apostrophe

🙂 Merci tout plein Kiki,
Tu m'avais déjà dépanné pour un truc très similaire.
Ici, chez moi, ton code marche.
J'aurais jamais trouvé tout seul.
Fallait juste faire une petite modif
strDossier = Replace(Fichier.Name, "'", "''")
.Range("C" & CptLig) = "='" & strShortDossier & _
"[" & strDossier & "]" & NomFeuille & "'!R2C2"

Par contre au boulot (excel97) je cois que Replace ne fonctionne pas.🙄
J'ai déjà eu ce problème dans d'autres fichiers et je m'en été sorti
en mettant Application.WorksheetFunction.Substitute
à la place de Replace.
Je sais pas si ca ira dans le cas présent.
J'essaye demain matin et te dis ce qu'il en est.
En tout cas Mille mercis et bonne soirée @+😉
 
Re : Probleme nom de fichier avec apostrophe

Dans ce cas s'il n'y a qu'a mettre ceci pour que la version tourne sur les 2 versions d'Excel
Code:
If Application.Version <= "8.0" Then
    sStr = Application.Substitute(Fichier.Name, "'", "''")
Else
    sStr = Replace(Fichier.Name, "'", "''")
End If
.Range("C" & CptLig) = "='" & strShortDossier & _
                  "[" & sStr & "]" & NomFeuille & "'!R2C2"
ou tout simplement n'utiliser qu'Application.Substitute pour les 2 versions
 
Dernière édition:
Re : Probleme nom de fichier avec apostrophe

🙂 Bonjour Kiki, voila c'est fait, j'ai testé.

Avec ce code a la place de Replace : ca marche au boulot (excel97)

strDossier = WorksheetFunction.Substitute(Fichier.Name, "'", "''")
.Range("C" & CptLig) = "='" & strShortDossier & _
"[" & strDossier & "]" & NomFeuille & "'!R2C2"

Je vais pouvoir avancer dans mon projet.😛

Merci, bonne journée à tous et Vive XLD 😀
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

O
Réponses
5
Affichages
2 K
T
Réponses
9
Affichages
2 K
Tubule
T
J
Réponses
0
Affichages
898
julesrugby38
J
M
Réponses
2
Affichages
1 K
Mariano
M
Retour