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

Problème avec fonction MATCH

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

N

napo124

Guest
Bonjour à tous!

J'ai une petite difficulté avec cette ligne:

z = WorksheetFunction.Match(zone1.Cells(a, 2).Value, Worksheets(6).Range("B2:B60100"), 0)

La ligne fonctionne, seulement, celle-ci est incluse dans une fonction "if" elle même incluse dans une boucle "do loop".
Pas de problème pour tout cela, tout fonctionne.... pour une seule boucle! En effet, à partir du deuxième "passage" sur cette ligne, une erreur apparait !😡

Quelqu'un peut il m'expliqer pourquoi ?

Cordialement
 
Re : Problème avec fonction MATCH

Petite précision sur la structure de mon code:

If zone1.Cells(a, 1) = "ALS" Then

Set dest = Worksheets(6).Cells(1, 1).CurrentRegion
y = dest.Rows.Count

On Error GoTo ERREUR

z = WorksheetFunction.Match(zone1.Cells(a, 2).Value, Worksheets(6).Range("B2:B60100"), 0)

z = z + 1

(......)

GoTo PASERREUR


ERREUR:

PASERREUR:



Else

Set dest = Worksheets(4).Cells(1, 1).CurrentRegion
y = dest.Rows.Count

(.......)


End If
 
Re : Problème avec fonction MATCH

Salut Napo,
tout d'abord, essaye d'utiliser les balises de code quand tu postes du code en ligne (Mode Avancé et le petit # pour le code)

Ensuite, il serait beaucoup plus simple de te conseiller si on pouvait voir le code en entier. Encore mieux, si tu pouvais déposer un fichier exemple pour qu'on puisse tester.

Sinon, vite comme ça, au niveau de la gestion de l'erreur, je te suggérerais de placer un
Code:
On Error Goto 0
juste avant ton
Code:
Loop
pour invalider la gestion d'erreur à chaque passage, ce qui te permettrait de réutiliser ta gestion d'erreur en boucle.

Cordialement,

Étienne
 
Re : Problème avec fonction MATCH

Bonjour Etienne,

Merci de ta réponse et de ton aide.

On error go to 0 ne semble rien changer.


Voici le code exemple:

 

Pièces jointes

Re : Problème avec fonction MATCH

Salut Napo,
voici quelque chose qui ne nécessiterait pas de gestion d'erreur.

VB:
Option Explicit
Sub Test()
Dim i As Byte, Plage As Range, Cellule, c

Application.ScreenUpdating = False
Set Plage = Range("E2:E13")

For i = 2 To 13
    If Cells(i, 2).Value = "B" Then
        Cellule = Cells(i, 1).Value
        Set c = Plage.Find(Cellule, LookIn:=xlValues, lookat:=xlWhole)
        If Not c Is Nothing Then
            Cells(i, 3).Value = "Youpi!"
        Else
            Cells(i, 3).Value = "Loupé!"
        End If
    End If
Next i

Set Plage = Nothing

End Sub

Cordialement,

Étienne
 
Re : Problème avec fonction MATCH

Merci Etienne pour ton code fonctionnel !

Il éffectue exactement ce que j'essais de faire!

Cependant, je ne comprends toujours pas mon erreur, et cela est frustrant 😕
 
- 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

Réponses
17
Affichages
2 K
Réponses
12
Affichages
1 K
J
Réponses
4
Affichages
1 K
J
S
Réponses
8
Affichages
2 K
S
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…