avec
if (dir(cdLettre,vbDirectory)<>"" then
msgbox "existe"
else
msgbox "absent"
end if
ceci fontionne bien lorque il y a quelque chose sur le cd rom
parcontre quand le cd est vide je reçois
erreur d'execution 52
nom ou n° de fichier incorrect
ce qui a mon avis semble normal vu que le cd est vide
question comment eviter ce bug
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Guillaume
Salut, Moi je dirais qu il faut d abord voir si il y a un cd rom. ton erreur est suremen erreur "periperique non pret" qu on retrouve si on tente d acceder au cdrom par le poste de travail alors que ce dernier est vide. Par contre je connais pas la fonction de tester ca... peut etre qu avec ca : Public Function TesterPresence() As Boolean Fichier = "d:" Dim a As Long On Error Resume Next a = FileLen(Fichier) TesterPresenceFichier = Not (Err.Number > 0) On Error GoTo 0 end function
Salut,
Moi je dirais qu il faut d abord voir si il y a un cd rom.
ton erreur est suremen erreur "periperique non pret" qu on retrouve si on tente d acceder au cdrom par le poste de travail alors que ce dernier est vide.
Par contre je connais pas la fonction de tester ca...
peut etre qu avec ca :
Public Function TesterPresence() As Boolean
Fichier = "d:"
Dim a As Long
On Error Resume Next
a = FileLen(Fichier)
TesterPresenceFichier = Not (Err.Number > 0)
On Error GoTo 0
end function
Salut, Moi je dirais qu il faut d abord voir si il y a un cd rom. ton erreur est suremen erreur "periperique non pret" qu on retrouve si on tente d acceder au cdrom par le poste de travail alors que ce dernier est vide. Par contre je connais pas la fonction de tester ca... peut etre qu avec ca : Public Function TesterPresence() As Boolean Fichier = "d:" Dim a As Long On Error Resume Next a = FileLen(Fichier) TesterPresenceFichier = Not (Err.Number > 0) On Error GoTo 0 end function
Lali
Puis c'est normal pour toi, tu devra simplement intercepte r l'erreur 52 en ajoutant quelques lignes à ton script comme suit :
On Error GoTo ErrorHandler
If Dir(dir(cdLettre,vbDirectory)<>"" , vbDirectory) <> "" Then MsgBox "existe" Else MsgBox "absent" End If
Exit Sub ErrorHandler: If Err.Number = 52 Then Resume Next Else MsgBox Err.Description & " " & Err.Number End Id
-----Message d'origine----- bonjour voici le problemme
je teste l'existence d'un fichier sur un cd rom
avec if (dir(cdLettre,vbDirectory)<>"" then msgbox "existe" else msgbox "absent" end if ceci fontionne bien lorque il y a quelque chose sur le cd rom
parcontre quand le cd est vide je reçois erreur d'execution 52 nom ou n° de fichier incorrect ce qui a mon avis semble normal vu que le cd est vide question comment eviter ce bug
merci lou
.
Puis c'est normal pour toi, tu devra simplement intercepte
r l'erreur 52 en ajoutant quelques lignes à ton script
comme suit :
On Error GoTo ErrorHandler
If Dir(dir(cdLettre,vbDirectory)<>"" , vbDirectory) <> ""
Then
MsgBox "existe"
Else
MsgBox "absent"
End If
Exit Sub
ErrorHandler:
If Err.Number = 52 Then
Resume Next
Else
MsgBox Err.Description & " " & Err.Number
End Id
-----Message d'origine-----
bonjour
voici le problemme
je teste l'existence d'un fichier sur un cd rom
avec
if (dir(cdLettre,vbDirectory)<>"" then
msgbox "existe"
else
msgbox "absent"
end if
ceci fontionne bien lorque il y a quelque chose sur le cd
rom
parcontre quand le cd est vide je reçois
erreur d'execution 52
nom ou n° de fichier incorrect
ce qui a mon avis semble normal vu que le cd est vide
question comment eviter ce bug
Puis c'est normal pour toi, tu devra simplement intercepte r l'erreur 52 en ajoutant quelques lignes à ton script comme suit :
On Error GoTo ErrorHandler
If Dir(dir(cdLettre,vbDirectory)<>"" , vbDirectory) <> "" Then MsgBox "existe" Else MsgBox "absent" End If
Exit Sub ErrorHandler: If Err.Number = 52 Then Resume Next Else MsgBox Err.Description & " " & Err.Number End Id
-----Message d'origine----- bonjour voici le problemme
je teste l'existence d'un fichier sur un cd rom
avec if (dir(cdLettre,vbDirectory)<>"" then msgbox "existe" else msgbox "absent" end if ceci fontionne bien lorque il y a quelque chose sur le cd rom
parcontre quand le cd est vide je reçois erreur d'execution 52 nom ou n° de fichier incorrect ce qui a mon avis semble normal vu que le cd est vide question comment eviter ce bug
merci lou
.
Lali
Puis c'est normal pour toi, tu devra simplement intercepte r l'erreur 52 en ajoutant quelques lignes à ton script comme suit :
On Error GoTo ErrorHandler
If Dir(dir(cdLettre,vbDirectory)<>"" , vbDirectory) <> "" Then MsgBox "existe" Else MsgBox "absent" End If
Exit Sub ErrorHandler: If Err.Number = 52 Then Resume Next Else MsgBox Err.Description & " " & Err.Number End Id
-----Message d'origine----- bonjour voici le problemme
je teste l'existence d'un fichier sur un cd rom
avec if (dir(cdLettre,vbDirectory)<>"" then msgbox "existe" else msgbox "absent" end if ceci fontionne bien lorque il y a quelque chose sur le cd rom
parcontre quand le cd est vide je reçois erreur d'execution 52 nom ou n° de fichier incorrect ce qui a mon avis semble normal vu que le cd est vide question comment eviter ce bug
merci lou
.
Puis c'est normal pour toi, tu devra simplement intercepte
r l'erreur 52 en ajoutant quelques lignes à ton script
comme suit :
On Error GoTo ErrorHandler
If Dir(dir(cdLettre,vbDirectory)<>"" , vbDirectory) <> ""
Then
MsgBox "existe"
Else
MsgBox "absent"
End If
Exit Sub
ErrorHandler:
If Err.Number = 52 Then
Resume Next
Else
MsgBox Err.Description & " " & Err.Number
End Id
-----Message d'origine-----
bonjour
voici le problemme
je teste l'existence d'un fichier sur un cd rom
avec
if (dir(cdLettre,vbDirectory)<>"" then
msgbox "existe"
else
msgbox "absent"
end if
ceci fontionne bien lorque il y a quelque chose sur le cd
rom
parcontre quand le cd est vide je reçois
erreur d'execution 52
nom ou n° de fichier incorrect
ce qui a mon avis semble normal vu que le cd est vide
question comment eviter ce bug
Puis c'est normal pour toi, tu devra simplement intercepte r l'erreur 52 en ajoutant quelques lignes à ton script comme suit :
On Error GoTo ErrorHandler
If Dir(dir(cdLettre,vbDirectory)<>"" , vbDirectory) <> "" Then MsgBox "existe" Else MsgBox "absent" End If
Exit Sub ErrorHandler: If Err.Number = 52 Then Resume Next Else MsgBox Err.Description & " " & Err.Number End Id
-----Message d'origine----- bonjour voici le problemme
je teste l'existence d'un fichier sur un cd rom
avec if (dir(cdLettre,vbDirectory)<>"" then msgbox "existe" else msgbox "absent" end if ceci fontionne bien lorque il y a quelque chose sur le cd rom
parcontre quand le cd est vide je reçois erreur d'execution 52 nom ou n° de fichier incorrect ce qui a mon avis semble normal vu que le cd est vide question comment eviter ce bug
merci lou
.
Xavier HUE
Bonjour lou,
Intercepter l'erreur: Dim strNomRepertoire As String
On Error Resume Next strNomRepertoire = Dir(cdLettre,vbDirectory)
If Err.Number <> 0 Then msgbox "existe" else msgbox "absent" end if
On Error Goto 0
Tu peux également utiliser la Méthode FileExists de l'objet FileSystemObject. Si dessous extrait de l'aide:
FileSystemObject, objet
Description
Donne accès au système de fichier d'un ordinateur.
Syntaxe
Scripting.FileSystemObject
Remarques
Le code suivant illustre comment l'objet FileSystemObject est employé pour renvoyer un objet TextStream pouvant être lu, ou dans lequel il est possible d'écrire des informations :
Set fs = CreateObject("Scripting.FileSystemObject") Set a = fs.CreateTextFile("c:fichiertest.txt", True) a.WriteLine("Ceci est un test.") a.Close
Dans le code ci-dessus, la fonction CreateObject renvoie l'objet FileSystemObject (fs). La méthode CreateTextFile crée ensuite le fichier sous forme d'objet TextStream (a) et la méthode WriteLine écrit une ligne de texte dans le fichier texte créé. La méthode Close vide le tampon et ferme le fichier.
FileExists, méthode
Description
Renvoie la valeur True si un fichier spécifié existe, False dans le cas contraire.
Syntaxe
object.FileExists(filespec)
La syntaxe de la méthode FileExists comprend les éléments suivants :
Élément Description object Correspond toujours au nom d'un objet FileSystemObject. filespec Le nom du fichier dont l'existence est à déterminer. Une spécification de chemin complet (absolue ou relative) est nécessaire si le fichier ne se trouve pas dans le dossier courant.
Cordialement.
Bonjour lou,
Intercepter l'erreur:
Dim strNomRepertoire As String
On Error Resume Next
strNomRepertoire = Dir(cdLettre,vbDirectory)
If Err.Number <> 0 Then
msgbox "existe"
else
msgbox "absent"
end if
On Error Goto 0
Tu peux également utiliser la Méthode FileExists de
l'objet FileSystemObject. Si dessous extrait de l'aide:
FileSystemObject, objet
Description
Donne accès au système de fichier d'un ordinateur.
Syntaxe
Scripting.FileSystemObject
Remarques
Le code suivant illustre comment l'objet FileSystemObject
est employé pour renvoyer un objet TextStream pouvant être
lu, ou dans lequel il est possible d'écrire des
informations :
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:fichiertest.txt", True)
a.WriteLine("Ceci est un test.")
a.Close
Dans le code ci-dessus, la fonction CreateObject renvoie
l'objet FileSystemObject (fs). La méthode CreateTextFile
crée ensuite le fichier sous forme d'objet TextStream (a)
et la méthode WriteLine écrit une ligne de texte dans le
fichier texte créé. La méthode Close vide le tampon et
ferme le fichier.
FileExists, méthode
Description
Renvoie la valeur True si un fichier spécifié existe,
False dans le cas contraire.
Syntaxe
object.FileExists(filespec)
La syntaxe de la méthode FileExists comprend les éléments
suivants :
Élément Description
object Correspond toujours au nom d'un objet
FileSystemObject.
filespec Le nom du fichier dont l'existence est à
déterminer. Une spécification de chemin complet (absolue
ou relative) est nécessaire si le fichier ne se trouve pas
dans le dossier courant.
Intercepter l'erreur: Dim strNomRepertoire As String
On Error Resume Next strNomRepertoire = Dir(cdLettre,vbDirectory)
If Err.Number <> 0 Then msgbox "existe" else msgbox "absent" end if
On Error Goto 0
Tu peux également utiliser la Méthode FileExists de l'objet FileSystemObject. Si dessous extrait de l'aide:
FileSystemObject, objet
Description
Donne accès au système de fichier d'un ordinateur.
Syntaxe
Scripting.FileSystemObject
Remarques
Le code suivant illustre comment l'objet FileSystemObject est employé pour renvoyer un objet TextStream pouvant être lu, ou dans lequel il est possible d'écrire des informations :
Set fs = CreateObject("Scripting.FileSystemObject") Set a = fs.CreateTextFile("c:fichiertest.txt", True) a.WriteLine("Ceci est un test.") a.Close
Dans le code ci-dessus, la fonction CreateObject renvoie l'objet FileSystemObject (fs). La méthode CreateTextFile crée ensuite le fichier sous forme d'objet TextStream (a) et la méthode WriteLine écrit une ligne de texte dans le fichier texte créé. La méthode Close vide le tampon et ferme le fichier.
FileExists, méthode
Description
Renvoie la valeur True si un fichier spécifié existe, False dans le cas contraire.
Syntaxe
object.FileExists(filespec)
La syntaxe de la méthode FileExists comprend les éléments suivants :
Élément Description object Correspond toujours au nom d'un objet FileSystemObject. filespec Le nom du fichier dont l'existence est à déterminer. Une spécification de chemin complet (absolue ou relative) est nécessaire si le fichier ne se trouve pas dans le dossier courant.