Macros - Gestion des bugs

foofur Messages postés 13 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 5 février 2008 - 22 oct. 2007 à 15:14
Brosske Messages postés 98 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 12 août 2010 - 5 nov. 2007 à 22:02
Bonjour,

Je viens de recuperer une base Access composée de plusieurs macros, composée elles mêmes de plusieurs requêtes.

Lors de l'ouverture du formulaire, une macro est appelé à être lancée.
Dans cette macro, il y a une requete qui se connecte sur une autre base de données.
Le problème est : si les tables nécessaires à cette requête sont occupées (donc inaccessibles), Access génère un bug avec une tite fenetre qui a pour titre "L'action a échoué", le nom de la macro, le nom de la requete qui n'a pas fonctionné;  et je n'ai pas d'autre possibilité que de cliquer sur "Arreter".

Ce que j'aimerai : c'est que cette boite de message n'apparaisse pas et que je puisse dire si tu peux pas te connecter maintenant retente dans 2 mn.

Avez vous une idée sur comment faire?

Ci-dessous la portion du code qui pause problème :
 
Dim UserInt As Double
MinuteInt = DLookup("[Minute Interval]", "StopAuto")
UserInt = (60000 * MinuteInt) 'Calculate Timer value based upon setup minute




TimerInterval = UserInt

'Set the Form Timer to setup selected minutes


Dim stDocName As String
DoCmd.SetWarnings False
    stDocName = "ProcessAnalysis_auto"

'Process the Auto mode
    DoCmd.RunMacro stDocName

Merci pour votre aide,

Flo

1 réponse

Brosske Messages postés 98 Date d'inscription jeudi 25 novembre 2004 Statut Membre Dernière intervention 12 août 2010 1
5 nov. 2007 à 22:02
bonjour,

le principe:

do
   err.clear
   on error resume next
      ton action qui peut foirer
loop while err.description<>"" then 'eh oui ça a foiré donc on réessaie

en suite tu peux améliorer avec un timer ou autre élément qui limite la durée du loop

j'espère que ça te donne une idée

F.M.
0
Rejoignez-nous