OVH Cloud OVH Cloud

import openfile

11 réponses
Avatar
macgiver
Bonjour a tous voici mon code pour importer une table dbf dans ma bd access,
j'ai mis une variable nomfichier dans mon DoCmd.TransferDatabase pour pouvoir
récuperer des fichiers qui change de nom à chaque semaine, mais j'ai une
erreur me disant que le moteur de base de recherche n'a pas pu trouver
l'objet d:\... avec le nom complet de l'emplacement du fichier dbf. Pourtant
c'est le bon path qui se retrouve dans ma variable, comment régler ce
problème qui empêche mon importation?


Function import_francois()

Dim NomFichier As String
'NomFichier = Dir("D:\07gps\07-truckbase\francois\")
NomFichier = ChoixDuFichier

If NomFichier = "" Then
MsgBox "Le fichier stat est introuvable !", vbExclamation, "Erreur"
Else
DoCmd.TransferDatabase acImport, "dBase III", "d:\", acTable, NomFichier,
"truck1", False
MsgBox "Importation réussie!"
End If
End Function

Public Function ChoixDuFichier() As String
ChoixDuFichier = OpenFile(CurrentProject.Path)
End Function


Merci

1 réponse

1 2
Avatar
Eric
re,

Peut-être avec ceci ;-)

Sub zz(NomNouvelleTable As String)
Dim SelectedFile As String, PathFile As String
SelectedFile = OpenFile("D:")
' Récupération du répertoire stockant le .dbf
PathFile = Left(SelectedFile, InStrRev(SelectedFile, ""))
' Pour ne récupérer que le nom du fichier et son extension
SelectedFile = Mid(SelectedFile, InStrRev(SelectedFile, "") + 1)
' Pour virer, après la fin du nom du fichier.dbf,
' les espaces et les chr(0).
SelectedFile = Trim(Replace(SelectedFile, Chr(0), ""))
DoCmd.TransferDatabase acImport, "dBase III", PathFile, acTable, _
SelectedFile, NomNouvelleTable, False
End Sub

Que tu appelles par Call zz("Truck") par exemple qui t'importera ton
fichier xx.dbf dans la bd courante, en tant que table, sous le nom de Truck.

ca me donne tjrs la meme erreur avec ta modif, désolé, je vais trouvé autre
chose, par contre si tu as d'autre idées ou un module déja monter semblable,
alors fait moi signe

merci encore


re,

Une idée, la fonction OpenFile() te retourne une chaine de 254 caractères.
Si le pb persiste sur '...n'a pas pu trouver
l'objet d:... avec le nom complet de l'emplacement du fichier dbf'

Essaies avec
NomFichier=Trim(OpenFile(CurrentProject.Path))



--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr


1 2