Pour deux cellules différentes???? Comprends pas...

Dekoy

XLDnaute Nouveau
Bonsoir à tous,
dans 2 onglets différents, j'ai deux cellules d'apparence égales mais qui lorsque je les analyse avec du code VBA, ne sont pas identifiées comme telles.
Si vous savez pourquoi dites moi comment résoudre ce problème sans copier coller.
Merci d'avance
 

Pièces jointes

  • Test1.xls
    29.5 KB · Affichages: 87
  • Test1.xls
    29.5 KB · Affichages: 84
  • Test1.xls
    29.5 KB · Affichages: 84

Catrice

XLDnaute Barbatruc
Re : Pour deux cellules différentes???? Comprends pas...

Bonjour,

certaines cellules sont en Texte dans l'onglet ZGMTIP17 ce qui n'est pas le cas dans l'onglet Global.
copier/coller reste une bonne solution

Ceci a l'air de fontionner ....
Columns("D").TextToColumns TrailingMinusNumbers:=True
 
Dernière édition:

Dekoy

XLDnaute Nouveau
Re : Pour deux cellules différentes???? Comprends pas...

Merci beaucoup.
Je ne peux pas faire de copier coller car je cherche justement à mettre en relation les cellules identiques...
Peut-être arriverez-vous à résoudre l'autre problème que j'ai posté ce soir...
 

Dekoy

XLDnaute Nouveau
Re : Pour deux cellules différentes???? Comprends pas...

Bonsoir j'ai de nouveaux le même problème mais avec deux cellules différentes.
Même si j'applique le "Columns("D").TextToColumns TrailingMinusNumbers:=True "
VBA ne les considère pas comme étant identique.
J'ai même essayé de copier le format de l'une et l'appliquer à l'autre... rien ne fait...
Merci d'avance
 

Pièces jointes

  • Test.xls
    27.5 KB · Affichages: 78
  • Test.xls
    27.5 KB · Affichages: 80
  • Test.xls
    27.5 KB · Affichages: 82

pierrejean

XLDnaute Barbatruc
Re : Pour deux cellules différentes???? Comprends pas...

bonsoir Dekoy

Vba n'y est pour rien: pour lui les 2 cellules colorées sont bien egales
Qu'est-ce qui te permet de dire :
VBA ne les considère pas comme étant identique ??
 

Pièces jointes

  • Dekoy_Test.zip
    13.8 KB · Affichages: 28

ROGER2327

XLDnaute Barbatruc
Re : Pour deux cellules différentes???? Comprends pas...

Bonsoir à tous
Pour moi les cellules incriminées ont la même valeur. Le problème ne viendrait-il pas de ce qu'une ligne est insérée sur une feuille et pas sur l'autre sans qu'il en soit tenu compte dans la gestion des indices de ligne ?​
ROGER2327
 

Catrice

XLDnaute Barbatruc
Re : Pour deux cellules différentes???? Comprends pas...

Bonsoir,

Tu as toujours des cellules en Texte et d'autres en numérique ...

Tu peux tester tout en numérique en faisant :
=SI(Global!F9*1='IP06'!A6*1;"OK";"NOK")
ou tout en Texte en faisant :
=SI(CTXT(Global!F9)=CTXT('IP06'!A6);"OK";"NOK")

Là plus de probleme (normalement)
 

Dekoy

XLDnaute Nouveau
Re : Pour deux cellules différentes???? Comprends pas...

Re.
Je viens de rencontrer une certaine contradiction.
Pour ce qui est de comparer les cellules précédemment concernées, je ne dois pas utiliser de formules dans le cellules mais que de code VBA.
J'ai comparé les deux cellules par 2 méthodes: VBA et la formule donnée plus haut avec la fonction CNUM et là, à ma grande surprise, la formule de la cellule dit que mes cellules sont égales alors que le code VBA me dit que non...
Soit mon code de conversion en nombre n'est pas bonne, soit je ne sais pas pourquoi excel se contredit...
Voyez plûtot l'image ci-jointe.
Dans la barre de formule, le test pour comparer les deux cellules. En surbrillance, le code qui convertit les cellules en nombre et qui n'exécute pas le code qui suit...
Si vous pouvez me dire quoi faire???
 

Pièces jointes

  • Test.jpg
    Test.jpg
    57.4 KB · Affichages: 204
  • Test.jpg
    Test.jpg
    57.4 KB · Affichages: 202
  • Test.jpg
    Test.jpg
    57.4 KB · Affichages: 177

Dekoy

XLDnaute Nouveau
Re : Pour deux cellules différentes???? Comprends pas...

Voici le fichier en question version allégée avec juste les deux onglets concernés et le code VBA dans la partie Visual Basic.
Merci d'avance
 

Pièces jointes

  • Test.xls
    26.5 KB · Affichages: 83
  • Test.xls
    26.5 KB · Affichages: 82
  • Test.xls
    26.5 KB · Affichages: 79

Catrice

XLDnaute Barbatruc
Re : Pour deux cellules différentes???? Comprends pas...

Bonjour,

Il est normal que ta formule renvoie OK.
en F8 de Global, il y a du "vrai" numérique et en A5 de IP06, il y a du "faux" numérique (sous entendu au format texte).
Si tu testes :
=F8=CNUM('IP06'!A5) evidement tu vas récuperer VRAI.
Car F8 est numerique et 'IP06'!A5 tu le transformes en numérique avec CNUM.

La macro elle utilise Value. C'est la valeur brute (donc numérique et texte dans l'exemple).
Dans ce cas les cellules ne sont pas égales

Dans ta macro, il faut utiliser :
If Sheets("IP06").Cells(j, 1).Text = Sheets("Global").Cells(i, 6).Text Then

Ou convertir toutes tes datas en numérique.

NB : Tu peux eviter une boucle pour les formats nombres

Lastj = Sheets("IP06").Range("A65000").End(xlUp).Row
Lasti = Sheets("Global").Range("A65000").End(xlUp).Row
Sheets("IP06").Range("A2:A" & Lastj).NumberFormat = "0"
Sheets("Global").Range("F2:F" & Lasti).NumberFormat = "0"
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Pour deux cellules différentes???? Comprends pas...

Re

Veux-tu verifier que l'adaptation que j'ai faite fonctionne sans qu'Excel se contredise

essentiellement un lasti remplace un lastj
suppression des step 1 (inutiles)
de même pour pour les Goto (inutiles egalement)

Edit: Salut Catrice
 

Pièces jointes

  • Dekoy_Testb.zip
    13.6 KB · Affichages: 24

Discussions similaires

Réponses
4
Affichages
238
Réponses
2
Affichages
142

Statistiques des forums

Discussions
312 490
Messages
2 088 882
Membres
103 981
dernier inscrit
vinsalcatraz