Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Pb sur ma macro

  • Initiateur de la discussion Initiateur de la discussion Jul74ien74
  • 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 !

J

Jul74ien74

Guest
Bonjour,

je vous explique mon pb.

voici la macro :

For Lig = 8 To 10
If Cells(Lig, 2).Value = "1_01_Room-Layout\" Then
FichierATester = [M2] + Cells(Lig, 4) + Cells(Lig, 8)

Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFile(FichierATester)


Cells(Lig, 10).Value = f.DateLastModified

End If
Next Lig

Mon pb est que si le fichier, qui est censé se trouvé a l'adresse en [M2] + Cells(Lig, 4) + Cells(Lig, 8), est absent alors la macro plante. ce qui est normal.
Ce que j'aimerais c'est qui si il n'y est pas alors une msgbox s'ouvre en disant que le fichier n'est pas dispo et que la macro passe au reste

merci
 
Re : Pb sur ma macro

Bonjour ,

Peut être comme cela :

Code:
Sub ff()
Dim Fs As Object, F As Object
Dim Lig As Long
Dim FichierATester As String

Set Fs = CreateObject("Scripting.FileSystemObject")
 For Lig = 8 To 10
  
  If Cells(Lig, 2).Value = "1_01_Room-Layout\" Then
    FichierATester = [M2] + Cells(Lig, 4) + Cells(Lig, 8)
    On Error Resume Next
    Set F = Fs.GetFile(FichierATester)
     
     If Err.Number <> 0 Then
        MsgBox "Le fichier " & FichierATester & " n'est pas dispo": Err.Clear
       Else
       Cells(Lig, 10).Value = F.DateLastModified
     End If
     
     On Error GoTo 0
    Set F = Nothing
  End If

 Next Lig
Set Fs = Nothing

End Sub
 
Re : Pb sur ma macro

Bonjour
Faut gérer les erreurs

On Error Resume Next 'on gère les erreurs
For Lig = 8 To 10
If Cells(Lig, 2).Value = "1_01_Room-Layout\" Then
FichierATester = [M2] + Cells(Lig, 4) + Cells(Lig, 8)


Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFile(FichierATester)
'on test et efface l'error et on va en fin de boucle à saute
If err<>0 then msgbox FichierATester & " Absent" :err.clear:goto saute


Cells(Lig, 10).Value = f.DateLastModified
End If


saute:
Next Lig


Bruno
 
- 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
4
Affichages
692
Réponses
0
Affichages
639
Réponses
9
Affichages
1 K
Réponses
17
Affichages
2 K
D
  • Résolu(e)
Réponses
3
Affichages
694
débutantplus
D
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…