OVH Cloud OVH Cloud

Pbs "on error" ....

5 réponses
Avatar
Sylvain
Bonjour,

J'utilise la fonction suivante, mais lorsque l'Add-in=20
n'est pas r=E9f=E9renc=E9 la fonction s'arr=E9te et le message=20
d'erreur "erreur d'=E9x=E9cution 9..."
Cela semble provenir du "On error" qui n'est pas pris en=20
compte.=20
Que faire ?

Merci

Function AddinOpened(MonAddIn As String)
Dim FN As String
'=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
' Retour : Boolean - True si l'add-in est ouvert
' False sinon
'=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
On Error Resume Next

FN =3D Workbooks(MonAddIn).Name
AddinOpened =3D Err =3D 0

End Function

5 réponses

Avatar
michdenis
Bonjour Sylvain,

Une erreur de type 9 signifie que la valeur de la variable que tu essaies de passer à la procédure n'est pas valide parce que
dans le cas précis de cette fonction , le nom de la macro complémentaire n'est par reconnu ou qu'il est mal orthographié.

Un autre exemple est cette ligne de code qui provoquerait une erreur de type 9 si aucune des feuilles de ton classeur ne
porte ce nom :

Worksheets("Charlot").select

Ce n'est pas la commande qui n'est pas bonne, mais le nom de l'objet (dans ce cas, le nom de l'onglet de la feuille).


Salutations!



"Sylvain" a écrit dans le message de news:081c01c3ca07$61a1a070$
Bonjour,

J'utilise la fonction suivante, mais lorsque l'Add-in
n'est pas référencé la fonction s'arréte et le message
d'erreur "erreur d'éxécution 9..."
Cela semble provenir du "On error" qui n'est pas pris en
compte.
Que faire ?

Merci

Function AddinOpened(MonAddIn As String)
Dim FN As String
'=================================================== ' Retour : Boolean - True si l'add-in est ouvert
' False sinon
'=================================================== On Error Resume Next

FN = Workbooks(MonAddIn).Name
AddinOpened = Err = 0

End Function
Avatar
Bonjour,

Le but de cette fonction est de vérifier si un AddIn est
installé ou non.
Dans le cas ou il n'est pas installé la commande ne
fonctionne pas (ce qui est normal) mais la commande "on
error resume next" devrait passer à l'instruction
suivante ?

Merci
-----Message d'origine-----
Bonjour Sylvain,

Une erreur de type 9 signifie que la valeur de la
variable que tu essaies de passer à la procédure n'est

pas valide parce que
dans le cas précis de cette fonction , le nom de la
macro complémentaire n'est par reconnu ou qu'il est mal

orthographié.

Un autre exemple est cette ligne de code qui
provoquerait une erreur de type 9 si aucune des feuilles

de ton classeur ne
porte ce nom :

Worksheets("Charlot").select

Ce n'est pas la commande qui n'est pas bonne, mais le
nom de l'objet (dans ce cas, le nom de l'onglet de la

feuille).


Salutations!



"Sylvain" a écrit
dans le message de news:081c01c3ca07$61a1a070

$
Bonjour,

J'utilise la fonction suivante, mais lorsque l'Add-in
n'est pas référencé la fonction s'arréte et le message
d'erreur "erreur d'éxécution 9..."
Cela semble provenir du "On error" qui n'est pas pris en
compte.
Que faire ?

Merci

Function AddinOpened(MonAddIn As String)
Dim FN As String
'======================== ========================= ===
' Retour : Boolean - True si l'add-in est ouvert
' False sinon
'======================== ========================= ===
On Error Resume Next

FN = Workbooks(MonAddIn).Name
AddinOpened = Err = 0

End Function


.



Avatar
michdenis
Bonjour,

Si tu utilises : On error resume next
Ta_fonction
Ajoute : on error goto 0 '(Zéro)

est-ce que cela résout ton problème ?


Salutations



a écrit dans le message de news:03bb01c3ca33$2bb7e240$
Bonjour,

Le but de cette fonction est de vérifier si un AddIn est
installé ou non.
Dans le cas ou il n'est pas installé la commande ne
fonctionne pas (ce qui est normal) mais la commande "on
error resume next" devrait passer à l'instruction
suivante ?

Merci
-----Message d'origine-----
Bonjour Sylvain,

Une erreur de type 9 signifie que la valeur de la
variable que tu essaies de passer à la procédure n'est

pas valide parce que
dans le cas précis de cette fonction , le nom de la
macro complémentaire n'est par reconnu ou qu'il est mal

orthographié.

Un autre exemple est cette ligne de code qui
provoquerait une erreur de type 9 si aucune des feuilles

de ton classeur ne
porte ce nom :

Worksheets("Charlot").select

Ce n'est pas la commande qui n'est pas bonne, mais le
nom de l'objet (dans ce cas, le nom de l'onglet de la

feuille).


Salutations!



"Sylvain" a écrit
dans le message de news:081c01c3ca07$61a1a070

$
Bonjour,

J'utilise la fonction suivante, mais lorsque l'Add-in
n'est pas référencé la fonction s'arréte et le message
d'erreur "erreur d'éxécution 9..."
Cela semble provenir du "On error" qui n'est pas pris en
compte.
Que faire ?

Merci

Function AddinOpened(MonAddIn As String)
Dim FN As String
'=================================================== >' Retour : Boolean - True si l'add-in est ouvert
' False sinon
'=================================================== >On Error Resume Next

FN = Workbooks(MonAddIn).Name
AddinOpened = Err = 0

End Function


.



Avatar
Frédéric Sigonneau
Bonjour,

Je n'arrive pas à reproduire ce que tu décris. A mon avis l'erreur n'a rien à
voir avec la fonction (dont je ne vois pas quelle erreur de programmation
pourrait se glisser dans ses 3 lignes de code à la syntaxe très 'classique' !),
elle vient plutôt dune autre partie de ton code, dans les instructions qui font
appel à cette fonction et utilisent son résultat.

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !


Bonjour,

J'utilise la fonction suivante, mais lorsque l'Add-in
n'est pas référencé la fonction s'arréte et le message
d'erreur "erreur d'éxécution 9..."
Cela semble provenir du "On error" qui n'est pas pris en
compte.
Que faire ?

Merci

Function AddinOpened(MonAddIn As String)
Dim FN As String
'=================================================== > ' Retour : Boolean - True si l'add-in est ouvert
' False sinon
'=================================================== > On Error Resume Next

FN = Workbooks(MonAddIn).Name
AddinOpened = Err = 0

End Function


Avatar
Sylvain
Bonjour,

Non, en cas d'erreur Excel bloque toujours

Merci
-----Message d'origine-----
Bonjour,

Si tu utilises : On error resume next
Ta_fonction
Ajoute : on error goto 0 '(Zéro)

est-ce que cela résout ton problème ?


Salutations



a écrit dans le
message de news:03bb01c3ca33$2bb7e240$

Bonjour,

Le but de cette fonction est de vérifier si un AddIn est
installé ou non.
Dans le cas ou il n'est pas installé la commande ne
fonctionne pas (ce qui est normal) mais la commande "on
error resume next" devrait passer à l'instruction
suivante ?

Merci
-----Message d'origine-----
Bonjour Sylvain,

Une erreur de type 9 signifie que la valeur de la
variable que tu essaies de passer à la procédure n'est

pas valide parce que
dans le cas précis de cette fonction , le nom de la
macro complémentaire n'est par reconnu ou qu'il est mal

orthographié.

Un autre exemple est cette ligne de code qui
provoquerait une erreur de type 9 si aucune des feuilles

de ton classeur ne
porte ce nom :

Worksheets("Charlot").select

Ce n'est pas la commande qui n'est pas bonne, mais le
nom de l'objet (dans ce cas, le nom de l'onglet de la

feuille).


Salutations!



"Sylvain" a écrit
dans le message de news:081c01c3ca07$61a1a070

$
Bonjour,

J'utilise la fonction suivante, mais lorsque l'Add-in
n'est pas référencé la fonction s'arréte et le message
d'erreur "erreur d'éxécution 9..."
Cela semble provenir du "On error" qui n'est pas pris en
compte.
Que faire ?

Merci

Function AddinOpened(MonAddIn As String)
Dim FN As String
'======================== ========================= ===
' Retour : Boolean - True si l'add-in est ouvert
' False sinon
'======================== ========================= ===
On Error Resume Next

FN = Workbooks(MonAddIn).Name
AddinOpened = Err = 0

End Function


.




.