Filtre tcd vba

m_m22 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
m_m22 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, je veux appliquer un filtre à un tcd selon la valeur retourné de la rechercheV,

mais ça ne marche pas et j'ai un message d'erreur " incompatibilité de type"

le code est le suivant, par exemple je veux filtrer le tcd selon si le résultat de la recherchev = "valeur1".

l'erreur est sur le premiere argument de la fonction, mais je n'arrive pas à régler ça.
pourriez vous m'aider s'il vous plait?


code :
Sub macro()


Range("A1").Select


With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
"Current ")
For Each p In .PivotItems

If Application.VLookup(p.value, Sheets("Feuille1 ").Range("B:K"), 9, False) = "valeur1" Then
p.Visible = True
Else
p.Visible = False
End If
Next p
End With
End Sub
A voir également:

2 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour,

à quelle ligne as-tu le message d'erreur?

merci d'utiliser les balises de codes (vba est du basic): https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

as-tu bien
option explicit
en début de module?
0
m_m22 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
ha non, le message d'erreur je l'ai à la ligne de la recherchev
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
comment sais-tu que l'erreur est sur le premier argument?
as-tu testé
Application.VLookup("bonjour", Sheets("Feuille1 ").Range("B:K"), 9, False)


as-tu testé un cas où le vlookup trouvait et retournait quelque-chose?

je pense que, avant de comparer le résultat de vlookup avec un string, tu dois tester si il ne retourne par une erreur.
dim vl
vl=Application.VLookup(p.value, Sheets("Feuille1 ").Range("B:K"), 9, False)
if not iserror(vl) then
0
m_m22 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   > yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention  
 
oui j'ai tester avec comme premiere argument une cellule fixe puis j'ai afficher le résultat et ça marche
0