syntaxe pour "un fichier n'existe pas" ?

  • Initiateur de la discussion Initiateur de la discussion MissCroft
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

MissCroft

Guest
bonjour
je cherche à dire à ma macro que if condition, then if "lien du fichier" est introuvable then en ouvrir un autre spécifié

et je ne sais pas comment "écrire çà en VBA"
merci de votre aide encore une fois
 
Re : syntaxe pour "un fichier n'existe pas" ?

Bonsoir MissCroft, tototiti2008,

Peut-être une solution :

Code:
' Si le fichier est introuvable
If Dir(monFichier, vbDirectory) = "" Then
    MsgBox "Ouvrir un autre fichier"
End If
 
Re : syntaxe pour "un fichier n'existe pas" ?

en fait j'ai çà comme ligne :
If Target.Address = "$B$4" And IsNumeric(Target) And Len(Target) = 5 Then Workbooks.Open Filename:="X:\Planning grue\RECAP-LOUEURS-TARIFS3.xls"


le souci c'est que le X peut etre aussi P selon le poste d'où on exécute la macro, donc je cherche à faire des conditions pour voir lequel existe et ouvrir celui que excel trouve.
 
Re : syntaxe pour "un fichier n'existe pas" ?

bonjour a tous

Tu peux peut-etre t'inspirer de ceci

Code:
Sub ouvre()
On Error Resume Next
Workbooks.Open ("C:\testessai.xls")
 If Err.Number = 1004 Then
  Workbooks.Open ("C:\test.xls")
End If
On Error GoTo 0
End Sub

ps: je regarde avec ton code
 
Re : syntaxe pour "un fichier n'existe pas" ?

re,

un essai :
Code:
If Target.Address = "$B$4" And IsNumeric(Target) And Len(Target) = 5 Then
    If Dir("X:\Planning grue\RECAP-LOUEURS-TARIFS3.xls", vbDirectory) = "" Then
        If Dir("P:\Planning grue\RECAP-LOUEURS-TARIFS3.xls", vbDirectory) = "" Then
            MsgBox "Ouvrir un autre fichier"
        Else
            Workbooks.Open Filename:="P:\Planning grue\RECAP-LOUEURS-TARIFS3.xls"
        End If
    Else
        Workbooks.Open Filename:="X:\Planning grue\RECAP-LOUEURS-TARIFS3.xls"
    End If
End If

PS: Bonjour pierrejean
 
Re : syntaxe pour "un fichier n'existe pas" ?

Bonjour à tous,

une autre proposition :

Code:
Dim fs
Set fs = CreateObject("Scripting.FileSystemObject")
    If fs.fileexists("X:\Planning grue\RECAP-LOUEURS-TARIFS3.xls") Then
        Workbooks.Open "X:\Planning grue\RECAP-LOUEURS-TARIFS3.xls"
    Else
        Workbooks.Open "P:\Planning grue\RECAP-LOUEURS-TARIFS3.xls"
    End If
 
Re : syntaxe pour "un fichier n'existe pas" ?

Re

A tester donc:

Code:
Sub ouvre()
If Target.Address = "$B$4" And IsNumeric(Target) And Len(Target) = 5 Then
On Error Resume Next
 Workbooks.Open Filename:="X:\Planning grue\RECAP-LOUEURS-TARIFS3.xls"
  If Err.Number = 1004 Then
     Workbooks.Open Filename:="P:\Planning grue\RECAP-LOUEURS-TARIFS3.xls"
  End If
On Error GoTo 0
End Sub

Edit : Apres examen des reponses , je preconise celle de cbea 🙂 qui couvre toutes les possibilités et qui ne fait pas appel a la gestion d'erreur (a eviter en regle générérale)
 
Dernière édition:
Re : syntaxe pour "un fichier n'existe pas" ?

re,

un essai :
Code:
If Target.Address = "$B$4" And IsNumeric(Target) And Len(Target) = 5 Then
    If Dir("X:\Planning grue\RECAP-LOUEURS-TARIFS3.xls", vbDirectory) = "" Then
        If Dir("P:\Planning grue\RECAP-LOUEURS-TARIFS3.xls", vbDirectory) = "" Then
            MsgBox "Ouvrir un autre fichier"
        Else
            Workbooks.Open Filename:="P:\Planning grue\RECAP-LOUEURS-TARIFS3.xls"
        End If
    Else
        Workbooks.Open Filename:="X:\Planning grue\RECAP-LOUEURS-TARIFS3.xls"
    End If
End If

PS: Bonjour pierrejean


merci çà maaaaarche 🙂
une question : où trouver un "dico" de syntaxe vba ? parce que à chaque fois je cale sur la formulation d'une requête...où avez vous appris tout çà ?
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
37
Affichages
1 K
Retour