RESOLU [VBA] Gestion des erreurs

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

D

DonBeuBeu

Guest
Bonjour à tous,

Petit problème que je n'arrive pas à résoudre:

J'ai un code ou je souhaite ouvrir un fichier:

Code:
Sub test()

Dim référence As String

référence = Range("R3").Value

Const début_chemin = "F:\methodes_meca\B SEVESTRE\SMED optimisation changement série\Feuille d'op\"

Workbooks.Open Filename:=chemin & référence & ".xlsx", UpdateLinks:=False

End Sub

Remarquez le ".xlsx" sur l'avant dernière ligne, ils'agit de l’extension du fichier sauf que par moment sa peut être du xls, je voudrais donc que si il ne trouve pas le fichier, il re-tente de l'ouvrir avec l'extension ".xls"

J'ai déjà essayer des trucs du genre "On Error GoTo", sans succès...

Merci d'avance!!!
 
Dernière modification par un modérateur:
Re : [VBA] Gestion des erreurs

Bonjour DonBeuBeu

A tester:

Code:
Sub test()
Dim référence As String
référence = Range("R3").Value
début_chemin = "F:\methodes_meca\B SEVESTRE\SMED optimisation changement série\Feuille d'op\"
On Error Resume Next
 Workbooks.Open Filename:=début_chemin & "\" & référence & ".xlsx", UpdateLinks:=False
If Err.Number <> 0 Then
  Workbooks.Open Filename:=début_chemin & "\" & référence & ".xls", UpdateLinks:=False
End If
On Error GoTo 0
End Sub
 
Re : [VBA] Gestion des erreurs

Bonjour,

essaye peut être ceci :

Code:
Dim chemin As String, fichier As String
chemin = "F:\methodes_meca\B SEVESTRE\SMED optimisation changement série\Feuille d'op\"
fichier = Dir(chemin & "classeur.xl*")
If fichier <> "" Then Workbooks.Open Filename:=chemin & fichier, UpdateLinks:=False

bonne journée
@+

Edition : bonjour PierreJean🙂
 
Re : [VBA] Gestion des erreurs

Edit

Merci pour vos réponse!!!

Pierrejean: Le problème c'est que si il ouvre bien le .xlsx, il cherche le fichier en .xls, qui n’existe pas et donc affiche un message d'erreur...

Pierrot: Il ne se passe rien 😱
 
Dernière modification par un modérateur:
Re : [VBA] Gestion des erreurs

bonjour à tous

peut-être:
Code:
Dim référence As String
référence = Range("R3").Value

Const chemin = "C:\...\...\...\...\"         ' a mettre à jour !

If Dir(chemin & référence & ".xlsx") = "" Then
    Workbooks.Open Filename:=chemin & référence & ".xls", UpdateLinks:=False
Else
    Workbooks.Open Filename:=chemin & référence & ".xlsx", UpdateLinks:=False
End If

Bonne suite
 
Dernière édition:
Re : [VBA] Gestion des erreurs

Re

Curieux !!!

Il semblerait qu'il y ait erreur même si l'ouverture du .xlsx est effective
De même ,il n'est pas normal qu'il ne se passe rien avec le code de Pierrot (Attention remplacer classeur par reference)
 
- 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

J
Réponses
6
Affichages
930
J
V
Réponses
2
Affichages
1 K
Val119
V
N
  • Question Question
Réponses
5
Affichages
3 K
C
Réponses
12
Affichages
7 K
coolman53
C
Retour