Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comparaison de Plage

6 réponses
Avatar
Golem13
Bonjour.

Je compare 2 plages de valeurs avec la Fonction personnelle ci dessous:

===========================================================
Function comparecol(plage1 As Range, plage2 As Range)
For Each d In plage1
If plage2(d.Columns) = d Then comparecol = comparecol + 1
Next
End Function
===========================================================

Cela marche impeccable si les plages contienent des valeurs
differentes de 0 et non vide .
Comment modifier la formule pour ne pas tenir compte des valeurs non
numeriques, des cellules vides et celle contenant 0.

Merci de tout coup de pouce, bonne journée à tous .

+

6 réponses

Avatar
Jacky
Bonjour

Comment modifier la formule pour ne pas tenir compte des valeurs non
numeriques, des cellules vides et celle contenant 0.
'----------

Function comparecol(plage1 As Range, plage2 As Range)
For Each d In plage1
If Val(d) <> 0 And IsNumeric(d) Then
If plage2(d.Columns) = d Then comparecol = comparecol + 1
End If
Next
End Function
'-----------

Salutations
JJ

Avatar
michdenis
Bonjour Jacky,

L'utilisation de la fonction Val() est dangeureuse. Val ne travaille bien que si le séparateur décimale est le point.

Val("0,25") = 0 Val("0.25") = 0.25


Salutations!


"Jacky" a écrit dans le message de news:
Bonjour

Comment modifier la formule pour ne pas tenir compte des valeurs non
numeriques, des cellules vides et celle contenant 0.
'----------

Function comparecol(plage1 As Range, plage2 As Range)
For Each d In plage1
If Val(d) <> 0 And IsNumeric(d) Then
If plage2(d.Columns) = d Then comparecol = comparecol + 1
End If
Next
End Function
'-----------

Salutations
JJ

Avatar
Jacky
Bonjour, Arroi!!! je sais toujours pas Michel ou Denis, pourtant Jos me
l'avait soufflé, mais "la honte", je me rappelle plus.
Et ne me dit pas que les deux sont acceptés ;o)

Ok.,dans ce cas, tu remplaces par quoi ???

JJ

"michdenis" a écrit dans le message de
news:%
Bonjour Jacky,

L'utilisation de la fonction Val() est dangeureuse. Val ne travaille bien
que si le séparateur décimale est le point.


Val("0,25") = 0 Val("0.25") = 0.25


Salutations!


"Jacky" a écrit dans le message de news:


Bonjour

Comment modifier la formule pour ne pas tenir compte des valeurs non
numeriques, des cellules vides et celle contenant 0.
'----------

Function comparecol(plage1 As Range, plage2 As Range)
For Each d In plage1
If Val(d) <> 0 And IsNumeric(d) Then
If plage2(d.Columns) = d Then comparecol = comparecol + 1
End If
Next
End Function
'-----------

Salutations
JJ






Avatar
michdenis
| Et ne me dit pas que les deux sont acceptés ;o)

Il n'y en a qu'un seul MichDenis ;-)

| tu remplaces par quoi ?

La fonction Cdbl()


Salutations|


"Jacky" a écrit dans le message de news:
Bonjour, Arroi!!! je sais toujours pas Michel ou Denis, pourtant Jos me
l'avait soufflé, mais "la honte", je me rappelle plus.
Et ne me dit pas que les deux sont acceptés ;o)

Ok.,dans ce cas, tu remplaces par quoi ???

JJ

"michdenis" a écrit dans le message de
news:%
Bonjour Jacky,

L'utilisation de la fonction Val() est dangeureuse. Val ne travaille bien
que si le séparateur décimale est le point.


Val("0,25") = 0 Val("0.25") = 0.25


Salutations!


"Jacky" a écrit dans le message de news:


Bonjour

Comment modifier la formule pour ne pas tenir compte des valeurs non
numeriques, des cellules vides et celle contenant 0.
'----------

Function comparecol(plage1 As Range, plage2 As Range)
For Each d In plage1
If Val(d) <> 0 And IsNumeric(d) Then
If plage2(d.Columns) = d Then comparecol = comparecol + 1
End If
Next
End Function
'-----------

Salutations
JJ






Avatar
Jacky
Ouupsss
"Bonjour, Arrhh!!! je sais toujours pas Michel ou Denis, pourtant Jps me
l'avait soufflé, mais "la honte", je me rappelle plus.
Le correcteur me l'a modifier.....
Virééé
JJ

"Jacky" a écrit dans le message de
news:
Bonjour, Arroi!!! je sais toujours pas Michel ou Denis, pourtant Jos me
l'avait soufflé, mais "la honte", je me rappelle plus.
Et ne me dit pas que les deux sont acceptés ;o)

Ok.,dans ce cas, tu remplaces par quoi ???

JJ

"michdenis" a écrit dans le message de
news:%
Bonjour Jacky,

L'utilisation de la fonction Val() est dangeureuse. Val ne travaille
bien


que si le séparateur décimale est le point.

Val("0,25") = 0 Val("0.25") = 0.25


Salutations!


"Jacky" a écrit dans le message de news:


Bonjour

Comment modifier la formule pour ne pas tenir compte des valeurs non
numeriques, des cellules vides et celle contenant 0.
'----------

Function comparecol(plage1 As Range, plage2 As Range)
For Each d In plage1
If Val(d) <> 0 And IsNumeric(d) Then
If plage2(d.Columns) = d Then comparecol = comparecol + 1
End If
Next
End Function
'-----------

Salutations
JJ










Avatar
Golem13
Bonjour.

Merci à vous pour les exemples.

++




Ouupsss
"Bonjour, Arrhh!!! je sais toujours pas Michel ou Denis, pourtant Jps me
l'avait soufflé, mais "la honte", je me rappelle plus.
Le correcteur me l'a modifier.....
Virééé
JJ

"Jacky" a écrit dans le message de
news:
Bonjour, Arroi!!! je sais toujours pas Michel ou Denis, pourtant Jos me
l'avait soufflé, mais "la honte", je me rappelle plus.
Et ne me dit pas que les deux sont acceptés ;o)

Ok.,dans ce cas, tu remplaces par quoi ???

JJ

"michdenis" a écrit dans le message de
news:%
Bonjour Jacky,

L'utilisation de la fonction Val() est dangeureuse. Val ne travaille bien
que si le séparateur décimale est le point.

Val("0,25") = 0 Val("0.25") = 0.25


Salutations!


"Jacky" a écrit dans le message de news:
Bonjour

Comment modifier la formule pour ne pas tenir compte des valeurs non
numeriques, des cellules vides et celle contenant 0.
'----------

Function comparecol(plage1 As Range, plage2 As Range)
For Each d In plage1
If Val(d) <> 0 And IsNumeric(d) Then
If plage2(d.Columns) = d Then comparecol = comparecol + 1
End If
Next
End Function
'-----------

Salutations
JJ