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

détecter erreur avec vba sous forme de condition

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 !

philppe27

XLDnaute Occasionnel
Bonjour,

Je veux utiliser la commande Wokbooks open pour ouvrir un fichier qui n'existe pas forcément.
Tant que (While) ce fichier n'existe pas je veux avoir une action pour trouver un fichier qui exite.
Il me manque la syntaxe pour détecter que le fichier n'existe pas (while...) et lancer l'action.
Quelqu'un peut-il m'aider ?

Merci d'avance,

Cordialement
 
Re : détecter erreur avec vba sous forme de condition

bonjour philppe27

une macro a adapter

Code:
Sub test()
[COLOR=blue]fichier = "testbidon.xls"
[/COLOR]While 1 = 1
On Error Resume Next
Workbooks.Open (fichier)
If Err.Number <> 1004 Then Exit Sub
On Error GoTo 0
[COLOR=blue]MsgBox ("continue")
fichier = "test.xls"
[/COLOR]Wend
End Sub
 
Re : détecter erreur avec vba sous forme de condition

J'ai écrit ces lignes de programmes mais je n'arrive pas au résultat escompté:
Range("G1").FormulaR1C1 = "=YEAR(TODAY())"
Range("H1").FormulaR1C1 = _
"=IF(LEN(MONTH(TODAY()))>1,MONTH(TODAY()),""0""&MONTH(TODAY()))"
Range("I1").FormulaR1C1 = _
"=IF(LEN(DAY(TODAY()))>1,DAY(TODAY()),""0""&DAY(TODAY()))"
an = Range("G1")
mo = Range("H1")
jo = Range("I1")
On Error Resume Next
Workbooks.Open Filename:="G:\Service\PB\kanban\stcs" & an & "" & mo & "" & jo & ".xls", ReadOnly _
:=True
While Err.Number = 1004
jo = jo - 1
Workbooks.Open Filename:="G:\Service\PB\kanban\stcs" & an & "" & mo & "" & jo & ".xls", ReadOnly _
:=True
Wend
On Error GoTo 0


En effet, je voudrais que dès que le 1er fichier disponible est ouvert, pouvoir continuer le programme sans ouvrir les autres fichiers. Ce n'est pas le cas avec ces lignes en effet le programme est en boucle et cherche à ouvrir tous les fichiers.

Merci d'avance,

Cordialement
 
Re : détecter erreur avec vba sous forme de condition

Re

Ce qui se produit c'est que l'erreur n'est pas acquittée (par le on error goto 0) et le while est toujours actif

avant chaque tentative d'ouverture de fichier l'erreur doit etre acquittée pour que le test soit probant et des la decouverte d'erreur differente (ou pas d'erreur ) sortir de la boucle

revoir ce que je t'ais proposé en remplacant exit sub par call autremacro
 
- 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

Discussions similaires

  • Question Question
Microsoft 365 Excel vba
Réponses
5
Affichages
626
K
  • Résolu(e)
Réponses
3
Affichages
753
L
Réponses
9
Affichages
1 K
LordMarshall
L
C
Réponses
2
Affichages
1 K
C
J
Réponses
2
Affichages
2 K
J
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…