Avatar billede accessconsult Nybegynder
08. november 2013 - 09:26 Der er 7 kommentarer og
1 løsning

Makro eller VBA kode der tjekker om csv-fil findes i mappe

Jeg har et Access program som eksporterer en CSV-fil til en given mappe.
Efterfølgende skal et økonomisystem importere data fra CSV-filen.
Hvis importen lykkedes slettes CSV-filen.
Hvis den ikke lykkedes forbliver filen i mappen. Hvis den forbliver i mappen må Access ikke lave en ny eksport.
Jeg har behov for en makro eller VBA kode, som fortæller om filen eksisterer i mappen.
Avatar billede hugopedersen Nybegynder
08. november 2013 - 10:07 #1
Hvis du Googler  vba file exists  så får du masser at se på,
men du også prøve at Google  Createobject("Scripting.FileSystemObject").FolderExists  da det er den funktion du bør bruge
Avatar billede minimadsens Nybegynder
08. november 2013 - 11:33 #2
Option Explicit
DIM fso   
Set fso = CreateObject("Scripting.FileSystemObject")

If (fso.FileExists("STI_HER")) Then
  WScript.Echo("Fandt filen!")
  WScript.Quit()
Else
  WScript.Echo("Filen kunne ikke findes!")
End If

WScript.Quit()


------
1. Kopier overstående.

2. Ret "STI_HER" til den aktuelle sti, for den fil du gerne vil tjekke.

3. Gem det i en tekst fil, omdøb den fra .txt til .vbs
Avatar billede minimadsens Nybegynder
08. november 2013 - 11:34 #3
Når du retter "STI_HER" skal du huske at lade de to "" blive.
Avatar billede kabbak Professor
08. november 2013 - 17:01 #4
Public Function FilExist()
If Dir("C:\test\data.csv") <> "" Then
MsgBox " filen eksisterer"
Else
MsgBox " filen eksisterer ikke "
End If
End Function
Avatar billede accessconsult Nybegynder
09. november 2013 - 13:36 #5
Til Kabbak:
Jeg vil gerne sætte koden ind, som en betingelse i en makro. Det vil sige at hvis filen ikke eksisterer, så skal den ikke køre en forespørgsel, som danner en ny csv-fil.
Jeg kan ikke se at jeg kan sætte en VBA-kode ind, som en betingelse i en makro.
Avatar billede kabbak Professor
10. november 2013 - 21:25 #6
det kan gøres på 2 måder

Public Function FilExist() As Boolean
If Dir("C:\test\data.csv") <> "" Then' fast navn
FilExist = True
Else
FilExist = False
End Function

Public Function FilExist(StiOgNavn) As Boolean
If Dir(StiOgNavn) <> "" Then' variabelt navn, som kommer med kaldet
FilExist = True
Else
FilExist = False
End Function
Avatar billede accessconsult Nybegynder
27. november 2013 - 07:58 #7
Tusind tak for hjælpen. Det virker.
Men hvordan giver jeg point til jer?
Avatar billede kabbak Professor
27. november 2013 - 14:56 #8
Jeg ligger lige et svar ;-))
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester