repérer une difference de valeur dans une plage

E

evelynetfrancois

Guest
bonsoir a tout le forum

j essaye d exposer mon probleme

chacune des cellules de la plage ('A1:A10')doivent etre identique ( meme valeur , disons 400, mais cette valeur peut etre differentes de 400 mais toujour identique aux 1O cells)

Dans le cas ou une ou plusieurs de ces cells ('A1:A10')seraient différentes alors !!!..........

j aimerai ecrire cela :
if cells ('A1:A10' )n'ont pas une valeur identique Then ....

pouvais vous m aider ??a rediger cette ligne?
je vous en remercie d avance
bonne soirée
E et F
 

myDearFriend!

XLDnaute Barbatruc
Bonsoir evelynetfrancois, le Forum,

S'il s'agit de valeurs numériques exclusivement (comme dans ton exemple) :
      If Not (Application.Sum(Range('A1:A10')) / 10 = Range('A1')) Then
            MsgBox 'A1:A10 pas identiques !'
      End If
Il est évidemment plus simple d'utiliser l'expression 'différent de' mais on ne peut plus utiliser ce symbole dans les codes sur le forum....

Cordialement,
 

Dan

XLDnaute Barbatruc
Bonsoir,

Essaie ceci :

Code:
Sub test()
' Macro pour evelynetfrancois
' [B]Lien supprimé[/B]
Dim A as variant
Dim cell as range
A = Range('A1').Value
For Each cell In Range('A1:A10')
If cell -différent de- A Then
MsgBox cell.Value
End If
Next cell
End Sub
Le code te donnera la valeur de toutes les cellules différentes de celle de A1.

PS : remplace 'différent de par les signes adéquats. La touche à droite de la touche MAJ de ton clavier en principe.

;)

Edition : Dans l'instruction IF, remplacé Range('A1:A10'.value par la variable A définie avant dans le code.

Message édité par: Dan, à: 11/02/2006 22:15
 

ya_v_ka

XLDnaute Impliqué
Salut

Peut-être une piste, si la moyenne du total des 10 celulles = une celulle il y a de fortes chances que toutes les celulles soient identiques...

=SI(MOYENNE(A1:A10)=A1;'vrai';'faux')


Ya'v

oups salut tout le monde, juste le temps de vérifier l'idée, et t'en a déjà 2 qui te passent devant...

Ya'v

Message édité par: ya_v_ka, à: 11/02/2006 21:50
 
E

Evelynetfrancois

Guest
super !!
MERCI myDearFriend! ya_v_ka et Dan
c'est exactement ca !!!!!
la ligne de myDearFriend! est exactement ce que je cherchais
vous etes super !!
Merci de vous etes penché sur mon post
bonne soirée a vous
au plaisir de vous lire
E et F
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonsoir Didier, Dan, E&F, YaV, le Forum

Une ultime approche totalement différente qui ne se préocupera pas non plus si la plage est totalement vide :

Option Explicit

Sub TestValA1A10()
Dim ColTab As New Collection
Dim Cell As Range
Dim i As Byte
Dim Items As String

   
For Each Cell In Range('A1:A10')
       
On Error Resume Next
            ColTab.Add CStr(Cell), CStr(Cell)
       
On Error GoTo 0
   
Next Cell

   
If Not ColTab.Count = 1 Then
       
For i = 1 To ColTab.Count
            Items = Items & ColTab.Item(i) & vbCrLf
       
Next
   
        MsgBox 'Item Differents dans la plage :' & vbCrLf & Items
   
End If
End Sub

En prime cette méthode indique les differentes valeurs trouvées dans la plage.

Bonne Soirée
[ol]@+Thierry[/ol]
 

Discussions similaires

Statistiques des forums

Discussions
312 601
Messages
2 090 149
Membres
104 411
dernier inscrit
saidokhan