Impossible de lire la propriété Match

Le
Gilbert
Bonjour,

Dans une procédure j'utilise le code suivant
--

NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
Cells(NumLigne, 4) = NbHeuresPrescrites
NumOnglet = Format(Me.ListeMois, "m") + 1
ActiveWorkbook.Worksheets(NumOnglet).Activate
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
..
FinProc:
Application.ScreenUpdating = True
Exit Sub
TraitementErreur:
MsgBox "Erreur " & Err.Number & " : " & Err.Description
Resume FinProc
End Sub


A l'exécution, sur le 2° NumLigne=., je reçois le message suivant :
Impossible de lire la propriété Match de la classe WorkSheetFunction

Si je mets un point d'arrêt sur le MsgBox dans le traitement d'erreur et que
j'exécute le ligne dans la fenêtre Exécution, je récupère bien la valeur
attendue dans NumLigne.
Si je mets un point d'arrêt sur NumLigne=. et que j'appuie sur F5 à
chaque passage (c'est dans une boucle) je n'ai pas d'erreur

Avez-vous une idée pour résoudre ce problème?

Merci d'avance

--
Cordialement,

Gilbert
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #18392051
Bonjour.
Ajoute :
MsgBox NomOrganisme
devant la ligne pour contrôler la valeur de la variable (le message se
produit si la variable n'est pas renseignée).
Cordialement.
Daniel

Bonjour,

Dans une procédure j'utilise le code suivant
--------------
.........
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
Cells(NumLigne, 4) = NbHeuresPrescrites
NumOnglet = Format(Me.ListeMois, "m") + 1
ActiveWorkbook.Worksheets(NumOnglet).Activate
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
........
FinProc:
Application.ScreenUpdating = True
Exit Sub
TraitementErreur:
MsgBox "Erreur " & Err.Number & " : " & Err.Description
Resume FinProc
End Sub
------------------------------

A l'exécution, sur le 2° NumLigne=...., je reçois le message suivant :
Impossible de lire la propriété Match de la classe WorkSheetFunction

Si je mets un point d'arrêt sur le MsgBox dans le traitement d'erreur et que
j'exécute le ligne dans la fenêtre Exécution, je récupère bien la valeur
attendue dans NumLigne.
Si je mets un point d'arrêt sur NumLigne=.... et que j'appuie sur F5 à
chaque passage (c'est dans une boucle) je n'ai pas d'erreur

Avez-vous une idée pour résoudre ce problème?

Merci d'avance


Gilbert
Le #18392121
Bonjour,

La variable NomOrganisme est bien renseignée, je l'utilise quelques lignes
plus haut pour la même fonction (sur une autre feuille) qui ne pose pas de
problème.
Cette erreur se produit lorsqu'il ne trouve pas la valeur recherchée.
Mais elle y est bien vu que l'erreur ne se produit pas avec un point d'arrêt
sur la ligne.
Sans espoir, j'ai ajouté un DoEvents avant. Sans succès non plus!

--
Cordialement,

Gilbert


"Daniel.C" news:%
Bonjour.
Ajoute :
MsgBox NomOrganisme
devant la ligne pour contrôler la valeur de la variable (le message se
produit si la variable n'est pas renseignée).
Cordialement.
Daniel

> Bonjour,
>
> Dans une procédure j'utilise le code suivant
> --------------
> .........
> NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
> Range("A:A"), 0)
> Cells(NumLigne, 4) = NbHeuresPrescrites
> NumOnglet = Format(Me.ListeMois, "m") + 1
> ActiveWorkbook.Worksheets(NumOnglet).Activate
> NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
> Range("A:A"), 0)
> ........
> FinProc:
> Application.ScreenUpdating = True
> Exit Sub
> TraitementErreur:
> MsgBox "Erreur " & Err.Number & " : " & Err.Description
> Resume FinProc
> End Sub
> ------------------------------
>
> A l'exécution, sur le 2° NumLigne=...., je reçois le message suivant :
> Impossible de lire la propriété Match de la classe WorkSheetFunction
>
> Si je mets un point d'arrêt sur le MsgBox dans le traitement d'erreur et


que
> j'exécute le ligne dans la fenêtre Exécution, je récupère bien la valeur
> attendue dans NumLigne.
> Si je mets un point d'arrêt sur NumLigne=.... et que j'appuie sur F5 à
> chaque passage (c'est dans une boucle) je n'ai pas d'erreur
>
> Avez-vous une idée pour résoudre ce problème?
>
> Merci d'avance




Daniel.C
Le #18392101
Essaie en mettant :
NumLigne = Application.Match(NomOrganisme, Range("A:A"), 0)
J'ai lu un jour qu'il y avait parfois des résultats avec
"WorksheetFunction.Match"
Daniel
Bonjour,

La variable NomOrganisme est bien renseignée, je l'utilise quelques lignes
plus haut pour la même fonction (sur une autre feuille) qui ne pose pas de
problème.
Cette erreur se produit lorsqu'il ne trouve pas la valeur recherchée.
Mais elle y est bien vu que l'erreur ne se produit pas avec un point d'arrêt
sur la ligne.
Sans espoir, j'ai ajouté un DoEvents avant. Sans succès non plus!

--
Cordialement,

Gilbert


"Daniel.C" news:%
Bonjour.
Ajoute :
MsgBox NomOrganisme
devant la ligne pour contrôler la valeur de la variable (le message se
produit si la variable n'est pas renseignée).
Cordialement.
Daniel

Bonjour,

Dans une procédure j'utilise le code suivant
--------------
.........
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
Cells(NumLigne, 4) = NbHeuresPrescrites
NumOnglet = Format(Me.ListeMois, "m") + 1
ActiveWorkbook.Worksheets(NumOnglet).Activate
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
........
FinProc:
Application.ScreenUpdating = True
Exit Sub
TraitementErreur:
MsgBox "Erreur " & Err.Number & " : " & Err.Description
Resume FinProc
End Sub
------------------------------

A l'exécution, sur le 2° NumLigne=...., je reçois le message suivant :
Impossible de lire la propriété Match de la classe WorkSheetFunction

Si je mets un point d'arrêt sur le MsgBox dans le traitement d'erreur et
que j'exécute le ligne dans la fenêtre Exécution, je récupère bien la
valeur attendue dans NumLigne.
Si je mets un point d'arrêt sur NumLigne=.... et que j'appuie sur F5 à
chaque passage (c'est dans une boucle) je n'ai pas d'erreur

Avez-vous une idée pour résoudre ce problème?

Merci d'avance






Daniel.C
Le #18392321
Oups.
Essaie en mettant :
NumLigne = Application.Match(NomOrganisme, Range("A:A"), 0)
J'ai lu un jour qu'il y avait parfois des résultats bizarres avec
"WorksheetFunction.Match"
Daniel


Essaie en mettant :
NumLigne = Application.Match(NomOrganisme, Range("A:A"), 0)
J'ai lu un jour qu'il y avait parfois des résultats avec
"WorksheetFunction.Match"
Daniel
Bonjour,

La variable NomOrganisme est bien renseignée, je l'utilise quelques lignes
plus haut pour la même fonction (sur une autre feuille) qui ne pose pas de
problème.
Cette erreur se produit lorsqu'il ne trouve pas la valeur recherchée.
Mais elle y est bien vu que l'erreur ne se produit pas avec un point
d'arrêt
sur la ligne.
Sans espoir, j'ai ajouté un DoEvents avant. Sans succès non plus!

-- Cordialement,

Gilbert


"Daniel.C" news:%
Bonjour.
Ajoute :
MsgBox NomOrganisme
devant la ligne pour contrôler la valeur de la variable (le message se
produit si la variable n'est pas renseignée).
Cordialement.
Daniel

Bonjour,

Dans une procédure j'utilise le code suivant
--------------
.........
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
Cells(NumLigne, 4) = NbHeuresPrescrites
NumOnglet = Format(Me.ListeMois, "m") + 1
ActiveWorkbook.Worksheets(NumOnglet).Activate
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
........
FinProc:
Application.ScreenUpdating = True
Exit Sub
TraitementErreur:
MsgBox "Erreur " & Err.Number & " : " & Err.Description
Resume FinProc
End Sub
------------------------------

A l'exécution, sur le 2° NumLigne=...., je reçois le message suivant :
Impossible de lire la propriété Match de la classe WorkSheetFunction

Si je mets un point d'arrêt sur le MsgBox dans le traitement d'erreur et
que j'exécute le ligne dans la fenêtre Exécution, je récupère bien la
valeur attendue dans NumLigne.
Si je mets un point d'arrêt sur NumLigne=.... et que j'appuie sur F5 à
chaque passage (c'est dans une boucle) je n'ai pas d'erreur

Avez-vous une idée pour résoudre ce problème?

Merci d'avance








Gilbert
Le #18392311
Le problème est le même. L'erreur est différente.
Cette fois-ci je récupère le message "Incompatibilité de type"
Si je mets un point d'arrêt : pas de problème!
Je n'y comprends rien.

--
Cordialement,

Gilbert


"Daniel.C" news:%
Essaie en mettant :
NumLigne = Application.Match(NomOrganisme, Range("A:A"), 0)
J'ai lu un jour qu'il y avait parfois des résultats avec
"WorksheetFunction.Match"
Daniel
> Bonjour,
>
> La variable NomOrganisme est bien renseignée, je l'utilise quelques


lignes
> plus haut pour la même fonction (sur une autre feuille) qui ne pose pas


de
> problème.
> Cette erreur se produit lorsqu'il ne trouve pas la valeur recherchée.
> Mais elle y est bien vu que l'erreur ne se produit pas avec un point


d'arrêt
> sur la ligne.
> Sans espoir, j'ai ajouté un DoEvents avant. Sans succès non plus!
>
> --
> Cordialement,
>
> Gilbert
>
>
> "Daniel.C" > news:%
>> Bonjour.
>> Ajoute :
>> MsgBox NomOrganisme
>> devant la ligne pour contrôler la valeur de la variable (le message se
>> produit si la variable n'est pas renseignée).
>> Cordialement.
>> Daniel
>>
>>> Bonjour,
>>>
>>> Dans une procédure j'utilise le code suivant
>>> --------------
>>> .........
>>> NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
>>> Range("A:A"), 0)
>>> Cells(NumLigne, 4) = NbHeuresPrescrites
>>> NumOnglet = Format(Me.ListeMois, "m") + 1
>>> ActiveWorkbook.Worksheets(NumOnglet).Activate
>>> NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
>>> Range("A:A"), 0)
>>> ........
>>> FinProc:
>>> Application.ScreenUpdating = True
>>> Exit Sub
>>> TraitementErreur:
>>> MsgBox "Erreur " & Err.Number & " : " & Err.Description
>>> Resume FinProc
>>> End Sub
>>> ------------------------------
>>>
>>> A l'exécution, sur le 2° NumLigne=...., je reçois le message suivant :
>>> Impossible de lire la propriété Match de la classe


WorkSheetFunction
>>>
>>> Si je mets un point d'arrêt sur le MsgBox dans le traitement d'erreur


et
>>> que j'exécute le ligne dans la fenêtre Exécution, je récupère bien la
>>> valeur attendue dans NumLigne.
>>> Si je mets un point d'arrêt sur NumLigne=.... et que j'appuie sur F5 à
>>> chaque passage (c'est dans une boucle) je n'ai pas d'erreur
>>>
>>> Avez-vous une idée pour résoudre ce problème?
>>>
>>> Merci d'avance




Daniel.C
Le #18392461
Ca ne sent pas bon...
Pour tester, peux-tu recopier les feuilles nécessaires à l'exécution de
la macro dans un nouveau classeur et exécuter la macro ?
Daniel

Le problème est le même. L'erreur est différente.
Cette fois-ci je récupère le message "Incompatibilité de type"
Si je mets un point d'arrêt : pas de problème!
Je n'y comprends rien.

--
Cordialement,

Gilbert


"Daniel.C" news:%
Essaie en mettant :
NumLigne = Application.Match(NomOrganisme, Range("A:A"), 0)
J'ai lu un jour qu'il y avait parfois des résultats avec
"WorksheetFunction.Match"
Daniel
Bonjour,

La variable NomOrganisme est bien renseignée, je l'utilise quelques lignes
plus haut pour la même fonction (sur une autre feuille) qui ne pose pas de
problème.
Cette erreur se produit lorsqu'il ne trouve pas la valeur recherchée.
Mais elle y est bien vu que l'erreur ne se produit pas avec un point
d'arrêt sur la ligne.
Sans espoir, j'ai ajouté un DoEvents avant. Sans succès non plus!

--
Cordialement,

Gilbert


"Daniel.C" news:%
Bonjour.
Ajoute :
MsgBox NomOrganisme
devant la ligne pour contrôler la valeur de la variable (le message se
produit si la variable n'est pas renseignée).
Cordialement.
Daniel

Bonjour,

Dans une procédure j'utilise le code suivant
--------------
.........
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
Cells(NumLigne, 4) = NbHeuresPrescrites
NumOnglet = Format(Me.ListeMois, "m") + 1
ActiveWorkbook.Worksheets(NumOnglet).Activate
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
........
FinProc:
Application.ScreenUpdating = True
Exit Sub
TraitementErreur:
MsgBox "Erreur " & Err.Number & " : " & Err.Description
Resume FinProc
End Sub
------------------------------

A l'exécution, sur le 2° NumLigne=...., je reçois le message suivant :
Impossible de lire la propriété Match de la classe WorkSheetFunction

Si je mets un point d'arrêt sur le MsgBox dans le traitement d'erreur et
que j'exécute le ligne dans la fenêtre Exécution, je récupère bien la
valeur attendue dans NumLigne.
Si je mets un point d'arrêt sur NumLigne=.... et que j'appuie sur F5 à
chaque passage (c'est dans une boucle) je n'ai pas d'erreur

Avez-vous une idée pour résoudre ce problème?

Merci d'avance










michdenis
Le #18392641
Un petit exemple :

Dans la colonne A1:A10 -> des cellules au
format texte contenant des valeurs numériques

X = Application.Match(1, Range("A1:A10"), 0)
x = erreur -> 2042

Par contre
X = Application.Match("1", Range("A1:A10"), 0)
retourne la valeur attendue.

Est-ce que le type de valeur du premier argument de
la fonction Match correspond au type de valeur affichée
dans la plage de cellules ?

Est-ce que tu es sûr que c'est la bonne feuille qui est affichée
auquel range("a:A") fait référence dans la fonction.

Si ta procédure est écrite dans un module feuille, Range("a:a")
fait obligatoirement référence à cette feuille si tu n'as pas
spécifié le nom de la feuille à laquelle il appartient.




"Gilbert" discussion :
Bonjour,

Dans une procédure j'utilise le code suivant
--------------
.........
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
Cells(NumLigne, 4) = NbHeuresPrescrites
NumOnglet = Format(Me.ListeMois, "m") + 1
ActiveWorkbook.Worksheets(NumOnglet).Activate
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
........
FinProc:
Application.ScreenUpdating = True
Exit Sub
TraitementErreur:
MsgBox "Erreur " & Err.Number & " : " & Err.Description
Resume FinProc
End Sub
------------------------------

A l'exécution, sur le 2° NumLigne=...., je reçois le message suivant :
Impossible de lire la propriété Match de la classe WorkSheetFunction

Si je mets un point d'arrêt sur le MsgBox dans le traitement d'erreur et que
j'exécute le ligne dans la fenêtre Exécution, je récupère bien la valeur
attendue dans NumLigne.
Si je mets un point d'arrêt sur NumLigne=.... et que j'appuie sur F5 à
chaque passage (c'est dans une boucle) je n'ai pas d'erreur

Avez-vous une idée pour résoudre ce problème?

Merci d'avance

--
Cordialement,

Gilbert
Gilbert
Le #18392621
En fait j'ai 1 classeur qui me sert à effectuer le traitement
Il ouvre 2 classeurs (A et B) pour les résultats.
Puis il ouvre N classeurs pour sélectionner les données qui sont cumulées
dans l'un ou l'autre des classeurs A et B
A chaque traitement j'utilise 2 modèles pour A et B ou bien les classeurs du
mois précédent.

--
Cordialement,

Gilbert


"Daniel.C" news:
Ca ne sent pas bon...
Pour tester, peux-tu recopier les feuilles nécessaires à l'exécution de
la macro dans un nouveau classeur et exécuter la macro ?
Daniel

> Le problème est le même. L'erreur est différente.
> Cette fois-ci je récupère le message "Incompatibilité de type"
> Si je mets un point d'arrêt : pas de problème!
> Je n'y comprends rien.
>
> --
> Cordialement,
>
> Gilbert
>
>
> "Daniel.C" > news:%
>> Essaie en mettant :
>> NumLigne = Application.Match(NomOrganisme, Range("A:A"), 0)
>> J'ai lu un jour qu'il y avait parfois des résultats avec
>> "WorksheetFunction.Match"
>> Daniel
>>> Bonjour,
>>>
>>> La variable NomOrganisme est bien renseignée, je l'utilise quelques


lignes
>>> plus haut pour la même fonction (sur une autre feuille) qui ne pose


pas de
>>> problème.
>>> Cette erreur se produit lorsqu'il ne trouve pas la valeur recherchée.
>>> Mais elle y est bien vu que l'erreur ne se produit pas avec un point
>>> d'arrêt sur la ligne.
>>> Sans espoir, j'ai ajouté un DoEvents avant. Sans succès non plus!
>>>
>>> --
>>> Cordialement,
>>>
>>> Gilbert
>>>
>>>
>>> "Daniel.C" >>> news:%
>>>> Bonjour.
>>>> Ajoute :
>>>> MsgBox NomOrganisme
>>>> devant la ligne pour contrôler la valeur de la variable (le message


se
>>>> produit si la variable n'est pas renseignée).
>>>> Cordialement.
>>>> Daniel
>>>>
>>>>> Bonjour,
>>>>>
>>>>> Dans une procédure j'utilise le code suivant
>>>>> --------------
>>>>> .........
>>>>> NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
>>>>> Range("A:A"), 0)
>>>>> Cells(NumLigne, 4) = NbHeuresPrescrites
>>>>> NumOnglet = Format(Me.ListeMois, "m") + 1
>>>>> ActiveWorkbook.Worksheets(NumOnglet).Activate
>>>>> NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
>>>>> Range("A:A"), 0)
>>>>> ........
>>>>> FinProc:
>>>>> Application.ScreenUpdating = True
>>>>> Exit Sub
>>>>> TraitementErreur:
>>>>> MsgBox "Erreur " & Err.Number & " : " & Err.Description
>>>>> Resume FinProc
>>>>> End Sub
>>>>> ------------------------------
>>>>>
>>>>> A l'exécution, sur le 2° NumLigne=...., je reçois le message suivant


:
>>>>> Impossible de lire la propriété Match de la classe


WorkSheetFunction
>>>>>
>>>>> Si je mets un point d'arrêt sur le MsgBox dans le traitement


d'erreur et
>>>>> que j'exécute le ligne dans la fenêtre Exécution, je récupère bien


la
>>>>> valeur attendue dans NumLigne.
>>>>> Si je mets un point d'arrêt sur NumLigne=.... et que j'appuie sur F5


à
>>>>> chaque passage (c'est dans une boucle) je n'ai pas d'erreur
>>>>>
>>>>> Avez-vous une idée pour résoudre ce problème?
>>>>>
>>>>> Merci d'avance




Misange
Le #18392961
Bonjour
Deux choses :
Il y a une petite subtilité dans le choix entre l'utilisation de
application.worksheetfunction.match ou de worksheetfunction.match :
avec la formulation longue, s'il n'y a pas d'équivalence, vba te renvoie
une erreur et s'arrête. Avec la formulation courte, tu peux tester
l'erreur (if iserror...) et la gérer.

ensuite essaie déjà de remplacer nomorganisme par sa valeur pour voir si
le problème ne vient pas de là. Comme tu travailles avec plusieurs
classeurs, assure toi que ta macro sait bien où trouver le nom défini.
Ne serait-il pas attribué de façon différente à divers classeurs ?

Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net

Gilbert a écrit :
Bonjour,

Dans une procédure j'utilise le code suivant
--------------
.........
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
Cells(NumLigne, 4) = NbHeuresPrescrites
NumOnglet = Format(Me.ListeMois, "m") + 1
ActiveWorkbook.Worksheets(NumOnglet).Activate
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
........
FinProc:
Application.ScreenUpdating = True
Exit Sub
TraitementErreur:
MsgBox "Erreur " & Err.Number & " : " & Err.Description
Resume FinProc
End Sub
------------------------------

A l'exécution, sur le 2° NumLigne=...., je reçois le message suivant :
Impossible de lire la propriété Match de la classe WorkSheetFunction

Si je mets un point d'arrêt sur le MsgBox dans le traitement d'erreur et que
j'exécute le ligne dans la fenêtre Exécution, je récupère bien la valeur
attendue dans NumLigne.
Si je mets un point d'arrêt sur NumLigne=.... et que j'appuie sur F5 à
chaque passage (c'est dans une boucle) je n'ai pas d'erreur

Avez-vous une idée pour résoudre ce problème?

Merci d'avance



Gilbert
Le #18393181
Merci de ta réponse
J'ai répondu dans ton message

--
Cordialement,

Gilbert

Un petit exemple :

Dans la colonne A1:A10 -> des cellules au
format texte contenant des valeurs numériques

X = Application.Match(1, Range("A1:A10"), 0)
x = erreur -> 2042

Par contre
X = Application.Match("1", Range("A1:A10"), 0)
retourne la valeur attendue.

Est-ce que le type de valeur du premier argument de
la fonction Match correspond au type de valeur affichée
dans la plage de cellules ?



Ce sont des valeurs texte du genre
ASTI-12
GRETA-12
IRFA-12



Est-ce que tu es sûr que c'est la bonne feuille qui est affichée
auquel range("a:A") fait référence dans la fonction.



Oui j'ai ajouté cette ligne pour vérifier
Cells(1, 1) = "aaaaaaa"


Si ta procédure est écrite dans un module feuille, Range("a:a")
fait obligatoirement référence à cette feuille si tu n'as pas
spécifié le nom de la feuille à laquelle il appartient.



J'ai écrit
ActiveWorkbook.Worksheets(NumOnglet).Activate
Cells(1, 1) = "aaaaaaa"
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)

Je fais donc bien référence à la feuille dans laquelle j'écris "aaaaaaa",
Non?
J'ai essayé aussi avec
Set MaPlage¬tiveWorkbook.Worksheets(NumOnglet).Range("A:A")
NumLigne = Application.WorksheetFunction.Match(NomOrganisme, MaPlage, 0)






"Gilbert"

groupe de
discussion :
Bonjour,

Dans une procédure j'utilise le code suivant
--------------
.........
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
Cells(NumLigne, 4) = NbHeuresPrescrites
NumOnglet = Format(Me.ListeMois, "m") + 1
ActiveWorkbook.Worksheets(NumOnglet).Activate
NumLigne = Application.WorksheetFunction.Match(NomOrganisme,
Range("A:A"), 0)
........
FinProc:
Application.ScreenUpdating = True
Exit Sub
TraitementErreur:
MsgBox "Erreur " & Err.Number & " : " & Err.Description
Resume FinProc
End Sub
------------------------------

A l'exécution, sur le 2° NumLigne=...., je reçois le message suivant :
Impossible de lire la propriété Match de la classe WorkSheetFunction

Si je mets un point d'arrêt sur le MsgBox dans le traitement d'erreur et


que
j'exécute le ligne dans la fenêtre Exécution, je récupère bien la valeur
attendue dans NumLigne.
Si je mets un point d'arrêt sur NumLigne=.... et que j'appuie sur F5 à
chaque passage (c'est dans une boucle) je n'ai pas d'erreur

Avez-vous une idée pour résoudre ce problème?

Merci d'avance

--
Cordialement,

Gilbert



Publicité
Poster une réponse
Anonyme