[Excel] solicite une explication!!!

bb -  
 bb -
Bonjour a tous
J'aurais besion d'une explication parce que la je suis totalement perdu!!!!!!
Voici le programme ci dessous(refadress1 & 2 etant des adresses de cellule de page Excel), itemno et locat etant le nom de certaines cellules. mon probleme est que dans la premiere Msgbox j'obtiens par exemple,pour i=1, C101 et dans la deuxieme B102 et si le While doit etre repeter, c'est a dire si i>1, ce phenomene ne se reproduit pas...!?
Je ne comprends pas je lui demande pas de changer de colonnes??

i=1
While (Range(Refadress1).Value <> ItemnoT2 Or Range(Refadress2).Value <> LocatT2) And i < 10
ActiveCell.Offset(1, 0).Activate
MsgBox "avant" & Refadress1
Refadress1 = ActiveCell.Address(ReferenceStyle:=xlA1)
MsgBox "apres" & Refadress1
Range(Refadress2).Select
ActiveCell.Offset(1, 0).Activate
Refadress2 = ActiveCell.Address(ReferenceStyle:=xlA1)
i = i + 1
Wend

Voila si vous avez une quelconque idees sur l'origine de l'erreur et un moyens d'y remedier, merci de me le faire passer.
Merci a tous ce qui aurons passer du temps a lire ce message
Bruno
A voir également:

3 réponses

tompols Messages postés 1273 Date d'inscription   Statut Contributeur Dernière intervention   435
 
Salut,

Quelle est l'adresse Refadress1 et quelle est ta cellule active qd tu lances le code ?

A+
0
bb
 
Salut Tompols
Merci d'avoir repondu
Alors le msgbox que j'ai nommer avant vaut C6132 et apres B6133.
La readress1 au demarage est C6132.
Et le code precedent ce passage active la cellule qui a pour adresse refadress2. Et chose etonnante que je n'avais pas remarque, juste avant je definis la valuer de refadress2 en activant refadress1 puis en la decalant d'une colonne,en negatif!? Voici le code :

Refadress1 = 0
Refadress2 = 0
Worksheets("sheet3").Activate
Cells.Find(ItemnoT2).Activate
Refadress1 = ActiveCell.Address(ReferenceStyle:=xlA1)
Range(Refadress1).Select
ActiveCell.Offset(0, -1).Activate
Refadress2 = ActiveCell.Address(ReferenceStyle:=xlA1)

Merci de ton attention
Bruno
0
bb
 
Bonjour a tous
Merci beaucoup a tompols qui m'a mis sur le chemin, voici pour ce que ca pourrais interesser la solution de mon erreur :

While (Range(Refadress1).Value <> ItemnoT2 Or Range(Refadress2).Value <> LocatT2) And i < 10
Range(Refadress1).Activate
ActiveCell.Offset(1, 0).Activate
Refadress1 = ActiveCell.Address(ReferenceStyle:=xlA1)
Range(Refadress2).Activate
ActiveCell.Offset(1, 0).Activate
Refadress2 = ActiveCell.Address(ReferenceStyle:=xlA1)
i = i + 1
Wend

C'est bete mais quand ca fait plusieurs jours que vous etes dessus c'est tres enervant d'etre arreter pour ca
Encore merci a tous
Bruno
0