Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1144 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  comparaison de cellules

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

comparaison de cellules

n°1418295
biglio
Posté le 02-08-2006 à 16:03:48  profilanswer
 

bonjour
je souhaite faire une comparaison de cellules  comportant un nom avec des espaces (2 espaces
a cote l un de l autre) et ca ne marche pas ca ne trouve pas les cellules identiques
meme si elle ont le meme texte :
 
exemple cellule 1 -> CHIE  N
cellule 2 -> CHIE  N
resultat ca ne trouve pas que cellule 1 = cellule 2
 
si cellule 1 -> CHIE N  (1 espace) et cellule 2 -> CHIE N (1 espace) CA marche !!!!
 
comment gerer ces 2 espaces ???
 
cellule 1 et 2 sont dimenssiones en STRING
 
voici le code en question :
 
Dim x As String
Dim y As String
Dim celluleBtemp As String
Dim celluleItemp As String
Dim celluleAnomenclature As String
Dim celluleBnomenclature As String
Dim celluleInomenclature As String
Dim celluleKnomenclature As String
Dim ligne_selection As String
Dim tempoT As String
Dim tempoN As String
 
x = 10
y = 10
 
retour:
 
celluleBtemp = "B" & x
' Range(celluleBtemp).Select
If Worksheets("temp" ).Range(celluleBtemp).Value = "" Then
GoTo termine
 
Else
 
 
 
celluleBtemp = "B" & x
celluleItemp = "I" & x
celluleBnomenclature = "B" & y
celluleInomenclature = "I" & y
 
'Sheets("TEMP" ).Select
tempoT = Worksheets("temp" ).Range(celluleBtemp).Value
 
'Sheets("NOMENCLATURE" ).Select
tempoN = Range(celluleBnomenclature).Value
 
'Sheets("TEMP" ).Select
     
    If tempoT = tempoN Then
 
et la ca trouve pas que tempoN = tempoT meme si le texte est bien correct avec le debogeur

mood
Publicité
Posté le 02-08-2006 à 16:03:48  profilanswer
 

n°1418298
jpcheck
Pioupiou
Posté le 02-08-2006 à 16:08:07  profilanswer
 

c'est super compliqué ton code pour juste faire un test sur des .value de cellules :o
if cells(i,j).value = cells(k,l).value then devrait suffire :p

n°1418303
biglio
Posté le 02-08-2006 à 16:19:26  profilanswer
 

t imagines bien que .....il a une raison ;)
donc en fait c est la comparaison de 2 fichiers textes importes
sur 2 feuilles differentes !!!
ensuite ca enleve les doublons compare les cellules pour mettre
les quantites de la feuille 2 sur la feuille 1 quand c est necessaire :):)
c est pour ca que c est complique  :pt1cable:  
et ca fait pas que ca .... ca met en page ca trie
enfin ca fait pleins de trucs :):):)
 
sinon pour mes espaces ???


Message édité par biglio le 02-08-2006 à 16:21:07
n°1418308
jpcheck
Pioupiou
Posté le 02-08-2006 à 16:26:05  profilanswer
 

il n'empeche que je ne comprends pas pourquoi tu passes par cette décomposition sans avoir vu le reste ^^
à la place du test mets un msgbox tempoT et tempoN pour voir.

n°1418311
galopin01
Posté le 02-08-2006 à 16:30:10  profilanswer
 

bonjour,
une 'tite démo qui fait ça
 
A+

n°1418319
biglio
Posté le 02-08-2006 à 16:34:34  profilanswer
 

heuuuu
elle fait quoi cette demo ??? ......
la je pige pas......
desole de mes lacunes ;)

Message cité 1 fois
Message édité par biglio le 02-08-2006 à 16:34:42
n°1418320
jpcheck
Pioupiou
Posté le 02-08-2006 à 16:35:17  profilanswer
 

biglio a écrit :

heuuuu
elle fait quoi cette demo ??? ......
la je pige pas......
desole de mes lacunes ;)


elle supprime les espaces de tes cellules.

n°1418338
biglio
Posté le 02-08-2006 à 16:41:09  profilanswer
 

jpcheck a écrit :

il n'empeche que je ne comprends pas pourquoi tu passes par cette décomposition sans avoir vu le reste ^^
à la place du test mets un msgbox tempoT et tempoN pour voir.


ben en fait c est 2 tableaux a comparer qui font 200 lignes chacuns voir plus
voir moins.....jamais la meme taille !!!
et vu que les 2 tableaux ne sont pas classes dans le meme ordre....
je prends une ligne du tableau 1 que je compare a TOUTES les ligne du tableau 2
 
apres pareil avec la ligne 2,3,4..... du tableau 1 avec toutes celles du tableau 2 !!!
 

n°1418344
jpcheck
Pioupiou
Posté le 02-08-2006 à 16:42:15  profilanswer
 

biglio a écrit :

ben en fait c est 2 tableaux a comparer qui font 200 lignes chacuns voir plus
voir moins.....jamais la meme taille !!!
et vu que les 2 tableaux ne sont pas classes dans le meme ordre....
je prends une ligne du tableau 1 que je compare a TOUTES les ligne du tableau 2
 
apres pareil avec la ligne 2,3,4..... du tableau 1 avec toutes celles du tableau 2 !!!


ben utilise le code de galopin01, le reste du code c'est des boucles for imbriquées.

n°1418350
biglio
Posté le 02-08-2006 à 16:44:13  profilanswer
 

jpcheck a écrit :

elle supprime les espaces de tes cellules.


moi j ai juste une feuille excel .... avec du texte .....qui fait rien....
 
comment et ou je vois le truc qui se fait ??? je vois pas de formules...
 
merci encore et desole ;)

mood
Publicité
Posté le 02-08-2006 à 16:44:13  profilanswer
 

n°1418356
jpcheck
Pioupiou
Posté le 02-08-2006 à 16:45:55  profilanswer
 

biglio a écrit :

moi j ai juste une feuille excel .... avec du texte .....qui fait rien....
 
comment et ou je vois le truc qui se fait ??? je vois pas de formules...
 
merci encore et desole ;)


Alt+ F11 pour voir le code.

n°1418357
galopin01
Posté le 02-08-2006 à 16:45:55  profilanswer
 

Euh ! le code c'est sur le module...

n°1418360
galopin01
Posté le 02-08-2006 à 16:46:15  profilanswer
 
n°1418368
biglio
Posté le 02-08-2006 à 16:47:55  profilanswer
 

jpcheck a écrit :

ben utilise le code de galopin01, le reste du code c'est des boucles for imbriquées.


je peux pas faire de boucle FOR ..... si je connais pas mon nombre de ligne non ???
avec mon truc ca s arrete pile a la fin du tableau quand il y a plus de texte ...
 
merci si il y a une astuce

n°1418369
jpcheck
Pioupiou
Posté le 02-08-2006 à 16:48:19  profilanswer
 


j'ai rien fait m'sieur l'arbitre  [:albator7k] :D

n°1418374
jpcheck
Pioupiou
Posté le 02-08-2006 à 16:49:28  profilanswer
 

tu stocke la longueur de ta colonne au pire. Tu as normalement suffisamment d'éléments pour résoudre ton problème maintenant :bounce:

n°1418385
biglio
Posté le 02-08-2006 à 16:52:55  profilanswer
 

jpcheck a écrit :

tu stocke la longueur de ta colonne au pire. Tu as normalement suffisamment d'éléments pour résoudre ton problème maintenant :bounce:


ben en fait j ai jamais eu de pb pour mes tableaux !!!
c est toi qui me dis que je fais complique... :ouch:  
le seul pb c est quand j ai du texte qui comprend 2 espaces d affiles....ca marche pas....
ca me plante....
 
et j arrive pas a voir le code de galopin alors.....
 
en plus y a penalty .....et je sais pas pourquoi  :D


Message édité par biglio le 02-08-2006 à 16:53:23
n°1418388
jpcheck
Pioupiou
Posté le 02-08-2006 à 16:54:41  profilanswer
 

le code du module est le suivant :  
Sub Test()
For i = 1 To 4
Var1 = Replace(Cells(i, 1), " ", "" )
Var2 = Replace(Cells(i, 2), " ", "" )
MsgBox Var1 = Var2
Next
End Sub
 
enjoy!

n°1418397
biglio
Posté le 02-08-2006 à 16:57:55  profilanswer
 

jpcheck a écrit :

le code du module est le suivant :  
Sub Test()
For i = 1 To 4
Var1 = Replace(Cells(i, 1), " ", "" )
Var2 = Replace(Cells(i, 2), " ", "" )
MsgBox Var1 = Var2
Next
End Sub
 
enjoy!


je viens de le trouver ...milles excuses ;)
par contre ca me supprime mes espaces........
et moi je veux les garder !!! je veux juste que si il y a 2 espaces
ca n en laisse qu un !!! et que ca supprime pas quand il y a 1 espace
 
je remplace -> Replace(Cells(i, 1), " ", "" ) par ca ? -> Replace(Cells(i, 1), "  ", " " ) ??
 
merci et desole de vous derranger...(je vous ennerve ou quoi ???)

n°1418404
jpcheck
Pioupiou
Posté le 02-08-2006 à 17:06:43  profilanswer
 

biglio a écrit :

je viens de le trouver ...milles excuses ;)
par contre ca me supprime mes espaces........
et moi je veux les garder !!! je veux juste que si il y a 2 espaces
ca n en laisse qu un !!! et que ca supprime pas quand il y a 1 espace
 
je remplace -> Replace(Cells(i, 1), " ", "" ) par ca ? -> Replace(Cells(i, 1), "  ", " " ) ??
 
merci et desole de vous derranger...(je vous ennerve ou quoi ???)


non tu ne nous énerves pas t'inquiète :o
et oui tu fais Replace(Cells(i, 1), "  ", " " ) si tu souhaites transfo les 2 espaces par un seul. Attention, le code de galopin marchait pour un nombre x de " " donc à toi de voir, si jamais il y a 3 espaces par exemple...
 

n°1418408
biglio
Posté le 02-08-2006 à 17:10:35  profilanswer
 

merci ca y est j ai pige en jouant un peu avec le code ;)
je vais faire ma sauce avec tout ca  
 
quand tu dis un nombre x .......c est chaud ca  :D  
 
 
merci a vous !!!!


Message édité par biglio le 02-08-2006 à 17:11:56
n°1418542
galopin01
Posté le 02-08-2006 à 20:39:54  profilanswer
 

pas de quoi.
rem : Le penalty c'est pour avoir croisé ma route à la même heure : 16:45:55
C'est limite dangereux ! http://perso.orange.fr/galopin01/images/sifflet.gif  
 
Non... mais !
:D


Message édité par galopin01 le 02-08-2006 à 20:41:15
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  comparaison de cellules

 

Sujets relatifs
Copie de cellules avec conditionsComparaison de chaine et repérage des modifications
[C# .net] Editer les cellules d'un gridView[VBS] : comparaison de fichiers (ligne par ligne)
Insertion SQL, comparaison de variable avec fichier .txtselectionner une plage de cellules dont le nombre varie
[Résolu] Comparaison et default()[Résolu] [MySQL] Comparaison entre 2 tables
Comparaison de chaîne de caractèreCopie plage cellules dans un onglet d'un autre fichier
Plus de sujets relatifs à : comparaison de cellules


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR