FileSystemObject - MoveFile

Status
Niet open voor verdere reacties.

h.van.bouwel

Gebruiker
Lid geworden
20 jun 2004
Berichten
51
Goede avond

Ik zal eerst beginnen met mijn idee uit te leggen. in een map staan een aantal files die in de database geïmporteerd moeten worden. Nadat dit gebeurd is moeten de files verplaatst worden naar de map "uploaded".

Het importeren loopt allemaal prima, maar mij het verplaatsten van de file krijg ik de foutmelding "Fout 58, het bestand bestaat al". De map waarnaar ik de file wil verplaatsen bevat op dit moment niets.

Hieronder de volledige code:

Sub ImportCCR()

Dim varFile As Variant
Dim strY As String
Dim strM As String
Dim strD As String
Dim strSQLAdd As String
Dim strSQLDel As String
Dim strFileTo As String
Dim strFileFrom As String
Dim fs As FileSystemObject
Dim strRoutinesEffectiveDate as String

With Application.FileSearch
.LookIn = Application.CurrentProject.Path & "\Reports\00. DB Uploads"
.FileName = "Reports - DB Upload - 20*.*"
If .Execute() > 0 Then
For i = 1 To .foundfiles.Count
varFile = .foundfiles(i)
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "ttbl_CCR", varFile, True
strY = Left(Right(varFile, 14), 4)
strM = Mid(Right(varFile, 14), 6, 2)
strD = Mid(Right(varFile, 14), 9, 2)
strRoutinesEffectiveDate = strD & "-" & strM & "-" & strY
'MsgBox strRoutinesEffectiveDate

DoCmd.SetWarnings False
strSQLAdd = "INSERT INTO tbl_CCR ( [Upload Date], [Efective Date], [Upload Source] )SELECT ttbl_CCR.*, #" & Date & "# AS [Upload Date], #" & Format(strRoutinesEffectiveDate, "dd-mm-yyyy") & "# AS [Effective Date], 'CCR' AS Source FROM ttbl_CCR"
DoCmd.RunSQL strSQLAdd
strSQLDel = "DELETE ttbl_CCR.* FROM ttbl_CCR"
DoCmd.RunSQL strSQLDel
DoCmd.SetWarnings True

Set fs = CreateObject("Scripting.FileSystemObject")
strFileFrom = varFile
strFileTo = Application.CurrentProject.Path & "\Reports\00. DB Uploads\Uploaded"
fs.MoveFile strFileFrom, strFileTo
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub

Heeft er iemand een idee waarom deze fout zich voordoet? Ik heb al verschillende verklaringen gzocht hoe ik dit zou moeten doen, maar ik kom er niet uit.

Alvast bedankt voor de info.

groetjes
 
Goedemorgen

Indien ik er:
Name fs as FileSystemObject
van maak, dan krij ik een foutmelding: "Fout 75, Toegangsfout bij pad of bestand"

Het brengt bij mijn probleem geen oplossing.
Enig ander idee?

mvg
 
h.van.bouwel,

Ik heb er niet veel verstand van maar dit is misschien een idee.
Als je de map "uploaded" verwijderd en kijk wat er dan gebeurd.
Code:
Set fs = CreateObject("Scripting.FileSystemObject")
Kan het zijn dat dit het is CreateObject?
Deze map is al aanwezig misschien vandaar de fout?

Suc6,
 
Goedemorgen

Hoornvan, bedankt voor je reactie, maar dat hielp ook niet.

Ik ben verder blijven zoeken en ik heb de oplossing gevonden. De "to-location" is gewijzigd van:
strFileTo = Application.CurrentProject.Path & "\Reports\00. DB Uploads\Uploaded"
naar
strFileTo = Application.CurrentProject.Path & "\Reports\00. DB Uploads\Uploaded" & "/"

Wat de reden is waarom dit er achter moet staan en waarom het dan wel werkt is mij een raadsel want een verklaring heb ik er niet voor gevonden.

In ieder geval bedankt voor de reacties.

groetjes
 
h.van.bouwel,

Leuk dat je het zelf de oplossing gevonden heb.

Mvg,
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan