Macro excel: pb d'affectation de valeur!
babelfish
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
lami20j Messages postés 21506 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21506 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
bonjour
j 'ai une chaine de caractere nommee de type "145-152", je dois placer les valeurs 145 et 152 dans 2 cellules distinctes.
j'utilise instr pour trouver la position de "-" et ensuite les fonctions right et left pour extraire les nombres.
je copie les resultats des fonctions right et left dans 2 chaines de caracteres avant de les affecter a mes 2 cellules. seulememt voila, si mes chaines de caracteres contiennent bien respectivement "145" et "152", mes cellules ne veulent pas prendre ces valeurs et restent nulles...
str: chaine contenant "145-152"
D: chaine contenant "-"
Pleft et Pright: chaine de caracteres
If InStr(str, D) <> 0 Then
Pleft = Left(str, (InStr(str, D) - 1))
Sheet1.cells(156,6).value = Pleft
pright = Right(str, (InStr(str, D) - 1))
Sheet1.cells(156,7).value= Pright
End If
Pourauoi mes cellules restent-elles vides alors que pright et Pleft contiennent bien ce que je veux?
merci
j 'ai une chaine de caractere nommee de type "145-152", je dois placer les valeurs 145 et 152 dans 2 cellules distinctes.
j'utilise instr pour trouver la position de "-" et ensuite les fonctions right et left pour extraire les nombres.
je copie les resultats des fonctions right et left dans 2 chaines de caracteres avant de les affecter a mes 2 cellules. seulememt voila, si mes chaines de caracteres contiennent bien respectivement "145" et "152", mes cellules ne veulent pas prendre ces valeurs et restent nulles...
str: chaine contenant "145-152"
D: chaine contenant "-"
Pleft et Pright: chaine de caracteres
If InStr(str, D) <> 0 Then
Pleft = Left(str, (InStr(str, D) - 1))
Sheet1.cells(156,6).value = Pleft
pright = Right(str, (InStr(str, D) - 1))
Sheet1.cells(156,7).value= Pright
End If
Pourauoi mes cellules restent-elles vides alors que pright et Pleft contiennent bien ce que je veux?
merci
Configuration: Windows 2000 Internet Explorer 6.0
2 réponses
-
Salut,
il ne faut pas utiliser de mots clés en tant que variables
str c'est une focnction et je vois que tu l'utilises en tant que nom de varible -
J'ai pris ta macro et je l'ai testée.
Chez moi ça marche.Sub a() strr = "145-152" D = "-" 'Pleft et Pright: chaine de caracteres If InStr(strr, D) <> 0 Then Pleft = Left(strr, (InStr(strr, D) - 1)) Sheets("Feuil1").Cells(1, 1).Value = Pleft Pright = Right(strr, (InStr(strr, D) - 1)) Sheets("Feuil1").Cells(2, 1).Value = Pright End If End Sub