Récupérer un type String issue cellule dans Excel en macro VB

Résolu
jeopardy27 Messages postés 2 Date d'inscription lundi 13 novembre 2006 Statut Membre Dernière intervention 13 novembre 2006 - 13 nov. 2006 à 00:32
jeopardy27 Messages postés 2 Date d'inscription lundi 13 novembre 2006 Statut Membre Dernière intervention 13 novembre 2006 - 13 nov. 2006 à 05:25
Bonjour,

Voila j'ai un petit problème qui va vous semblez trés simple je pense, mais je ne suis habitué des macros vb dans excel

Comment puis-je récupérer un type String en retour de range("A2").Value
Car dans le code ci-dessous il me met incompatibilité de type alors que
xls2.Worksheets(1).Range("c" & CStr(i)) <> "11E" fonctionnent trés bien

i = 3
While xls2.Worksheets(1).Range("c" & CStr(i)).Value <> xls1.Worksheets(1).Range(Pos_Field_Ref).Value
    i = i + 1
Wend

Merci d'une réponse rapide de votre part, cela me débloquerait

3 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
13 nov. 2006 à 00:38
Salut,

remplace le .Value par .Text

@++

<hr width="100%" size="2" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
/DIV>
3
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
13 nov. 2006 à 02:46
Et le Cast dans

Range("c" & CStr(i))

n'est pas nécessaire dans ce genre de code VBA


Tu peux tout aussi bien écrire

Range("c" & i)


Et comme l'a bien dit Mortalino, .Text te renvoie la valeur textuelle de la cellule


De plus, si tu fais des comparaisons de texte et que la casse peut
différer, il est préférable de forcer les majuscules ou minuscules lors
de la comparaison

If LCASE("MOT") = LCASE("mot") then ... ' retourne Vrai

ou

If UCASE("MOT") = UCASE("mot") then ... ' retourne Vrai aussi

mais

If "MOT" = "mot" then ...  ' retourne Faux

MPi
3
jeopardy27 Messages postés 2 Date d'inscription lundi 13 novembre 2006 Statut Membre Dernière intervention 13 novembre 2006
13 nov. 2006 à 05:25
Merci pour les réponses, c'est ce que je voulais
0
Rejoignez-nous