[VBA] index, match erreur de syntaxe
Résolu
tyranausor
Messages postés
3545
Date d'inscription
Statut
Membre
Dernière intervention
-
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 16602 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour, j'ai un problème avec mon code pour faire une recherche inversée (une recherchev à l'envers).
J'ai un classeur comprenant deux feuilles avec le code d'un userform rédigé ainsi
Il va en fait me chercher tous les noms des clients dans la feuille "Clients" (Feuil5). Dans ma feuille "Facture" (feuille où je travaille) j'ai une forme (d'où shape dans ce code) qui me sert de bouton dans la cellule A7 et qui, après, sera remplacé par la valeur recherchée en fonction de celle sélectionnée dans mon combobox.
Mais là où ça ne fonctionne pas, c'est pour la fonction index et équiv (match en vba). Sur Excel ça fonctionne bien mais en vba j'ai une erreur de syntaxe
J'ai un classeur comprenant deux feuilles avec le code d'un userform rédigé ainsi
Private Sub UserForm_initialize()
With Feuil5
Derlign = .Range("C" & Rows.Count).End(xlUp).Row
Me.Nomclient.Clear
For L = 3 To Derlign
Nomclient.AddItem .Range("C" & L).Value
Next
End With
End Sub
Private Sub CommandButton1_Click()
Dim i, j As String
ActiveSheet.Shapes("R").Delete
i = Range("A6500").End(xlUp)
j = Range("C6500").End(xlUp)
Range("A7") = Application.WorksheetFunction.Index(Nomclient, Feuil5.Range("A3:" & i), Match(Feuil5.Range("C3:" & j), 0))
Unload Me
End Sub
Il va en fait me chercher tous les noms des clients dans la feuille "Clients" (Feuil5). Dans ma feuille "Facture" (feuille où je travaille) j'ai une forme (d'où shape dans ce code) qui me sert de bouton dans la cellule A7 et qui, après, sera remplacé par la valeur recherchée en fonction de celle sélectionnée dans mon combobox.
Mais là où ça ne fonctionne pas, c'est pour la fonction index et équiv (match en vba). Sur Excel ça fonctionne bien mais en vba j'ai une erreur de syntaxe
A voir également:
- Vba index
- Index téléphonique - Guide
- Telecharger index - Télécharger - Gestion de fichiers
- Excel compter cellule couleur sans vba - Guide
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
- Find vba - Astuces et Solutions
5 réponses
Bonjour
Match(Feuil5.Range("C3:" & j), 0))
manquerait pas quelque chose ,
Match(valeurcherchée,Feuil5.Range("C3:" & j), 0))
Match(Feuil5.Range("C3:" & j), 0))
manquerait pas quelque chose ,
Match(valeurcherchée,Feuil5.Range("C3:" & j), 0))
Bonjour michel_m, merci d'avoir corrigé mon étourderie! Après correction, il me dit "Sub ou function non définie" en sélectionant Match. Que faire?
Re,
j'ai corrigé mon code avec ce que tu m'as dit, j'ai "la méthode 'range' de l'objet '_worksheet' a échoué.
Avec ton code il me dit qu'il y a erreur de syntaxe alors que je l'ai copié/collé. Et si je saute une ligne (donc .match sur une nouvelle ligne), j'ai une erreur, l'éditeur attend une expression!
j'ai corrigé mon code avec ce que tu m'as dit, j'ai "la méthode 'range' de l'objet '_worksheet' a échoué.
Range("A8") = Application.WorksheetFunction.Index(Feuil5.Range("A3:" & i), Application.Match(Nomclient, Feuil5.Range("C3:" & j), 0))
Avec ton code il me dit qu'il y a erreur de syntaxe alors que je l'ai copié/collé. Et si je saute une ligne (donc .match sur une nouvelle ligne), j'ai une erreur, l'éditeur attend une expression!
C'est ce que je pensais. Désolé mais ça ne fonctionne pas plus avec un point, j'ai toujours "la méthode 'range' de l'objet '_worksheet' a échoué. !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question