Dansk Access Forum
  Hjælp Hjælp  Søg i forum   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukketFileExists

 Besvar Besvar
Forfatter
frederik Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 04-05-2016
Land: Danmark
Status: Offline
Point: 3
Direkte link til dette indlæg Emne: FileExists
    Sendt: 04-05-2016 kl. 10:41

Hej,

 

Jeg har lånt noget kode (VB) på nettet der tjekker om en fil findes på en given sti…

 

FileExists('F:\acad\ARKE\E54\000-199\354E024B.dwg') – funktionen returner sand hvis den findes.

 

Men hvordan kan jeg lave den sti variabel…. Vil gerne kunne referere til en sti på formularen… …, og så lade funktionen tjekke om den er gyldig....

/Frederik
-------------------------------------
Function FileExists(ByVal strFile As String, Optional bFindFolders As Boolean) As Boolean
'Purpose: Return True if the file exists, even if it is hidden. 'Arguments: strFile: File name to look for. Current directory searched if no path included. ' bFindFolders. If strFile is a folder, FileExists() returns False unless this argument is True. 'Note: Does not look inside subdirectories for the file. 'Author: Allen Browne. http://allenbrowne.com June, 2006.
    Dim lngAttributes As Long

'Include read-only files, hidden files, system files.
    lngAttributes = (vbReadOnly Or vbHidden Or vbSystem)

    If bFindFolders Then
        lngAttributes = (lngAttributes Or vbDirectory) 'Include folders as well.
    Else
'Strip any trailing slash, so Dir does not look inside the folder.
        Do While Right$(strFile, 1) = "\"
            strFile = Left$(strFile, Len(strFile) - 1)
        Loop
    End If

'If Dir() returns something, the file exists.
    On Error Resume Next
    FileExists = (Len(Dir(strFile, lngAttributes)) > 0)
End Function

Function FolderExists(strPath As String) As Boolean
    On Error Resume Next
    FolderExists = ((GetAttr(strPath) And vbDirectory) = vbDirectory)
End Function

Function TrailingSlash(varIn As Variant) As String
    If Len(varIn) > 0 Then
        If Right(varIn, 1) = "\" Then
            TrailingSlash = varIn
        Else
            TrailingSlash = varIn & "\"
        End If
    End If
End Function

 

 

Til top



Til top
hkh Se dropdown
Sølv bruger
Sølv bruger


Medlem: 15-08-2012
Status: Offline
Point: 320
Direkte link til dette indlæg Sendt: 04-05-2016 kl. 11:04
"Men hvordan kan jeg lave den sti variabel…. Vil gerne kunne referere til en sti på formularen"

Hvad mener du med det?
Hvilken formular?

Du kommer til at forklare hvad du ønsker og hvad problemet er, ellers er det ikke nemt at komme med vejledning.
Hans
Til top
frederik Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 04-05-2016
Land: Danmark
Status: Offline
Point: 3
Direkte link til dette indlæg Sendt: 04-05-2016 kl. 11:21
Hej igen,
 
jeg har oprettet et eksempel her, så er det lidt lettere at forklare:
 
 
Det jeg gerne vil er, at udskifte stien her: FileExists('F:\acad\ARKE\E54\000-199\354E024B.dwg')
 
med en sti som ligger i samme formular hvor funktionen kaldes, og som er variabel...(beregnes ud fra andre felter på formularen)
 
fx: FileExists('[variabel_sti]')
 
Håber det letter forståelsen af problemet....
 
/Frederik
Til top
hkh Se dropdown
Sølv bruger
Sølv bruger


Medlem: 15-08-2012
Status: Offline
Point: 320
Direkte link til dette indlæg Sendt: 04-05-2016 kl. 11:34
Hvis det skal være din knap der udløser undersøgelsen om filen eksisterer kan det gøres med en hændelsesprocedure på knappen.

Det er blot at kalde FileExists med indholdet af variabel_sti i en IF Then Else sætning

Private Sub Kommandoknap0_Click()
    If FileExists(variabel_sti) = True Then
        msgbox"Filen: " & variabel_sti & " findes!"
    Else
        msgbox"Filen: " & variabel_sti & " findes ikke!"
    End If
End Sub

Hans
Til top
hkh Se dropdown
Sølv bruger
Sølv bruger


Medlem: 15-08-2012
Status: Offline
Point: 320
Direkte link til dette indlæg Sendt: 04-05-2016 kl. 12:02
Hvis ikke ovenstående er hvad du søger, eller du behøver yderligere hjælp så prøver du bare igen.
Hans
Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

© 2013 - 2024 Dansk Access Forum - en del af Excel-regneark.dk