Convertir nom long au format DOS (8.3)

RENAUDER

Nous a quitté
Repose en paix
Bonjour,

Pour cela j'utilise une fonction GetShortPath trouvée sur le Web.

Si j'indique mon chemin dans la commande :
GetShortPath ("D:\Archives\Archioutilvalid\8607\8607 0466") cela fonctionne.

Maintenant je veux utiliser une variable pour le chemin
FF="D:\Archives\Archioutilvalid\" & nf1 & "\" & nf3 ' nf1 et nf3 sont des variables
La variable FF me restitue bien le chemin complet que je vérifie avec Debug.Print (D:\Archives\Archioutilvalid\8607\8607 0466)
mais quand je lance :
GetShortPath (FF)
Le chemin au format 8.3 n'est pas restitué, il est vide.
J'ai essayé toutes sortes de combinaisons pour la variable FF mais je ne trouve pas.
Merci d'avance
 

Modeste

XLDnaute Barbatruc
Re : Convertir nom long au format DOS (8.3)

Bonjour Éric et Pierre,

Au départ de C:\Program Files (x86)\Microsoft Office\Document Themes 14\Theme Effects\

... la proposition de tatiak donne C:\PROGRA~2\MICROS~1\DOCUME~1\THEMEE~1\

Peut-on en déduire que chez moi ça fonctionne comme espéré par Éric?
 

job75

XLDnaute Barbatruc
Re : Convertir nom long au format DOS (8.3)

Bonjour RENAUDER, tatiak, Modeste,

J'ose à peine proposer :

Code:
Dim FF$
GetShortPath(FF)
ou encore :

Code:
GetShortPath(CStr(FF))
Mais ce n'est sûrement pas ça, RENAUDER l'aurait vu !

A+
 

Statistiques des forums

Discussions
312 226
Messages
2 086 414
Membres
103 204
dernier inscrit
alaa20dine01