comparaison de cellules

comparaison de cellules - VB/VBA/VBS - Programmation

Marsh Posté le 02-08-2006 à 16:03:48    

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

Reply

Marsh Posté le 02-08-2006 à 16:03:48   

Reply

Marsh Posté le 02-08-2006 à 16:08:07    

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

Reply

Marsh Posté le 02-08-2006 à 16:19:26    

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
Reply

Marsh Posté le 02-08-2006 à 16:26:05    

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.

Reply

Marsh Posté le 02-08-2006 à 16:30:10    

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

Reply

Marsh Posté le 02-08-2006 à 16:34:34    

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
Reply

Marsh Posté le 02-08-2006 à 16:35:17    

biglio a écrit :

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


elle supprime les espaces de tes cellules.

Reply

Marsh Posté le 02-08-2006 à 16:41:09    

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 !!!
 

Reply

Marsh Posté le 02-08-2006 à 16:42:15    

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.

Reply

Marsh Posté le 02-08-2006 à 16:44:13    

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 ;)

Reply

Marsh Posté le 02-08-2006 à 16:44:13   

Reply

Marsh Posté le 02-08-2006 à 16:45:55    

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.

Reply

Marsh Posté le 02-08-2006 à 16:45:55    

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

Reply

Marsh Posté le 02-08-2006 à 16:46:15    

Reply

Marsh Posté le 02-08-2006 à 16:47:55    

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

Reply

Marsh Posté le 02-08-2006 à 16:48:19    


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

Reply

Marsh Posté le 02-08-2006 à 16:49:28    

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

Reply

Marsh Posté le 02-08-2006 à 16:52:55    

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
Reply

Marsh Posté le 02-08-2006 à 16:54:41    

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!

Reply

Marsh Posté le 02-08-2006 à 16:57:55    

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 ???)

Reply

Marsh Posté le 02-08-2006 à 17:06:43    

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...
 

Reply

Marsh Posté le 02-08-2006 à 17:10:35    

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
Reply

Marsh Posté le 02-08-2006 à 20:39:54    

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
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed