2009-11-24 4 views
0

Je crée une base de données dans laquelle les utilisateurs peuvent cliquer sur un bouton de commande, ils seront transférés dans un dossier stocké dans un emplacement sécurisé et pourront choisir un document Word parmi là et tous les noms des fichiers choisis montreront dans une zone de liste sur un formulaire. Nous avons le code pour double-cliquer sur le nom du fichier pour ouvrir le document. Ce que nous recherchons, c'est du code pour montrer seulement le nom du fichier dans la zone de liste sans le chemin.Importer le nom de fichier dans la zone de liste sans accès au chemin 2007 vba-

Nous avons utilisé l'exemple de code donné dans la question "Comment afficher le dialogue de fichier ouvert dans Access 2007 vba" depuis ce site pour le configurer jusqu'à présent.

Toute aide serait géniale.

+0

Ta Tony, je ne peux pas sembler obtenir que travailler: voici notre code au moment . En cliquant sur le bouton de commande, la boîte de dialogue Fichier s'ouvre et s'exécute, la fonction publique la coupe pour n'être que le nom du fichier. DblClick ouvre l'objet sélectionné dans la zone de liste. Notre problème maintenant est que le nom du fichier a coupé le chemin et ne peut pas être ouvert à partir du double-clic. Nous l'avons fait fonctionner jusqu'à maintenant. –

+0

Postez votre code. –

Répondre

3

Exécutez le code suivant pour chaque nom de fichier à insérer dans la zone de liste.

Dim Chunks() As String, DocumentName As String 
Chunks() = Split("\\server\share\folder\subfolder\docuemnt.doc", "\") 
DocumentName = Chunks(UBound(Chunks())) 
0

Vous pouvez utiliser le FileSystemObject pour obtenir rapidement la partie du nom de fichier

EDIT - bonne suggestion de BitAccesser

requiert une référence à Microsoft Scripting Runtime, ou vous devez utiliser la CreateObject("Scripting.FileSystemObject")

Const WORD_TEST_PATH As String = "C:\users\admin\test\test.doc" 

Dim fso    As New FileSystemObject 
Dim strWordFileName As String 

strWordFileName = fso.GetFileName(WORD_TEST_PATH) 
Debug.Print strWordFileName 

sortie est: test.doc

Remplacez juste WORD_TEST_PATH le nom de fichier retourné de votre chemin de dialogue

+0

Pourquoi est-ce downvoted? N'est-ce pas l'état de la technique 'FileSystemObject' (par exemple: facile d'obtenir le nom de fichier, le chemin, le type, les dates, etc.)? – BitAccesser

+1

Appréciez l'annulation de celui-ci @BitAccesser. Je ne m'en inquiéterais pas. J'ai vu des choses étranges. Tout ce que je pouvais penser était que j'ai nommé la variable comme constante - mais je pensais que c'était mieux que le codage en dur dans l'appel GetFileName. Je pensais que c'était un bon exemple de FSO. Je l'utilise fréquemment. C'est puissant et facile à utiliser. – dbmitch

+0

Comme je suis nouveau et enthousiaste (nous verrons combien de temps), je vais tenir la ligne et se plaindre à ce sujet;) – BitAccesser

Questions connexes