Evaluate NB.SI() = erreur 2015

  • Initiateur de la discussion Compte Supprimé 979
  • Date de début
C

Compte Supprimé 979

Guest
Evaluate NB.SI() = erreur 2015 [RESOLU]

Bonjour à tous,

Est-ce que quelqu'un peut m'expliquer pourquoi en VBA :confused:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  Nb = ActiveSheet.Evaluate("NB.SI(1:1;" & Chr(34) & Target.Value & Chr(34) & ")")
End Sub
Ne fonctionne pas et me renvoie : Erreur 2015

Target.value me retourne bien la valeur que je viens de saisir

J'aimerais de façon très simple, savoir combien de valeurs indentiques existent !?

J'ai les neurones qui bloquent :D

Merci pour vos réponses
 
Dernière modification par un modérateur:

Cousinhub

XLDnaute Barbatruc
Inactif
Re : Evaluate NB.SI() = erreur 2015

Bonsoir, bruno

je n'ai pas cherché le pourquoi, mais tu peux essayer avec ce code :

Code:
nb2 = Application.CountIf([1:1], Target)

Edit, et avec la méthode Evaluate :

Code:
nb3 = Evaluate("COUNTIF(1:1," & """" & Target & """)")
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Evaluate NB.SI() = erreur 2015

Bonsoir,
Sinon essayer :
Nb = ActiveSheet.Evaluate("NB.SI(1:1;""" & Chr(34) & Target.Value & Chr(34) & """)")
Le texte de critère doit être entre guillemets doubles. Je n'ai pas testé.
A+
 

Cousinhub

XLDnaute Barbatruc
Inactif
Re : Evaluate NB.SI() = erreur 2015

Re-
(j'édite pas, ne sachant si tu as lu mon dernier Edit)

avec ta méthode, cela devrait également le faire :

Code:
nb3 = Evaluate("COUNTIF(1:1,""" & Target & """)")

J'avais mis un [ " & " ] de trop (mais cela fonctionnait également)
 
C

Compte Supprimé 979

Guest
Re : Evaluate NB.SI() = erreur 2015

Re-
(j'édite pas, ne sachant si tu as lu mon dernier Edit)
avec ta méthode, cela devrait également le faire :

Code:
nb3 = Evaluate("COUNTIF(1:1,""" & Target & """)")

J'avais mis un [ " & " ] de trop (mais cela fonctionnait également)
Encore merci,
Celle là est plus dans mon type de développement et elle focntionne,
donc je garde ;)

Thanks :D
 

Kotov

XLDnaute Impliqué
Re : Evaluate NB.SI() = erreur 2015

Bonjour à tous,

Bruno, pour répondre à ta question initiale (en gros, pourquoi ça ne marche pas), je te propose de traduire ta ligne en anglais, comme dans l'exemple suivant :

Le principe : la formule en anglais et le séparateur devient virgule au lieu de point virgule
Sur l'exemple suivant, ça semble fonctionner mais je n'ai pas réalisé de test exhaustif.

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
nb = Evaluate("COUNTIF(A1:A65536," & (Target.Value) & ")")
End Sub

A +

Kotov

EDIT : désolé Bhbh, je n'avais pas actualisé le fil. Ma réponse fait doublon.
 
Dernière édition:
C

Compte Supprimé 979

Guest
Re : Evaluate NB.SI() = erreur 2015

Bonjour à tous,
Bruno, pour répondre à ta question initiale (en gros, pourquoi ça ne marche pas), je te propose de traduire ta ligne en anglais, comme dans l'exemple suivant :

Le principe : la formule en anglais et le séparateur devient virgule au lieu de point virgule
Sur l'exemple suivant, ça semble fonctionner mais je n'ai pas réalisé de test exhaustif.

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
nb = Evaluate("COUNTIF(A1:A65536," & (Target.Value) & ")")
End Sub

A +

Kotov
Salut Voisin ;)

Je serais curieux de savoir quand même pourquoi ça ne marche pas avec NB.SI() !?

A les mystères de l'informatique
sacrain.gif


A+
 

Discussions similaires

Statistiques des forums

Discussions
313 344
Messages
2 097 337
Membres
106 916
dernier inscrit
Soltani mohamed