Menu

Tant que la valeur de la cellule active = "texte" [Résolu]

varin - 2 nov. 2017 à 18:31 - Dernière réponse :  Varin
- 3 nov. 2017 à 16:35
Bonjour,

Je cherche à réaliser une action tant que la valeur de la Cellule Active est égale au texte "</Placemark>"

Avec ce code cela ne fonctionne pas.

While ActiveCell.Text = "</Placemark>"
action à réaliser
Wend


Si quelqu'un peut m'aider je vous en remercie d'avance.
Afficher la suite 

Votre réponse

11 réponses

jordane45 21447 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 23 juin 2018 Dernière intervention - 2 nov. 2017 à 18:43
0
Merci
Bonjour,

1 - La cellule ne contient QUE "</Placemark>" ou il y autre chose autour ?
2 - Tu déclenches ta macro comment ?
3 - Tu l'as mise où ? dans une sub ??

NB : Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

Commenter la réponse de jordane45
0
Merci
Bonjour,

1 - La cellule ne contient QUE "</Placemark>" ou il y autre chose autour ?
Il n'y a que </Placemark>

2 - Tu déclenches ta macro comment ?
Par la touche F8

3 - Tu l'as mise où ? dans une sub ??
Elle est dans une Sub

Merci
Commenter la réponse de varin
jordane45 21447 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 23 juin 2018 Dernière intervention - 2 nov. 2017 à 18:53
0
Merci
Dans ce cas... ça devrait fonctionner....
Quand tu dis que ça ne marche pas.. c'est à dire??

N'aurais tu pas oublié un DoEvents ?

Tu peux essayer ceci et nous dire ce que ça donne ?



Sub test()
Dim i As Integer
i = 1
While ActiveCell.Text = "</Placemark>"
 Debug.Print " ok : " & i
 i = i + 1
 DoEvents
Wend


End Sub


Par contre ... attention ... ça risque de faire une boucle sans fin...
Commenter la réponse de jordane45
0
Merci
Après vérification la cellule contient </Placemark> puis des espaces (la valeur provient d'un autre programme).

Il me faudrait transformer
While ActiveCell.Text = "</Placemark>" 


EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).

Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
Jordane45


non plus avec la valeur exacte mais tant que la valeur "</Placemark>" est contenue dans la cellule Active.
---------

Merci
jordane45 21447 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 23 juin 2018 Dernière intervention - 2 nov. 2017 à 19:07
Si ce n'est qu'une question d'espaces... un TRIM suffira
While trim(ActiveCell.Text) = "</Placemark>"
jordane45 21447 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 23 juin 2018 Dernière intervention > jordane45 21447 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 23 juin 2018 Dernière intervention - 2 nov. 2017 à 19:09
Et puis sinon tu peux faire du LIKE
While Trim(ActiveCell.Text) Like "*</Placemark>*"


Et pour la dernière fois ......
Pour poster du code sur le forum.. IL FAUT 'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Commenter la réponse de varin
0
Merci
Bonjour,

Grand merci, la deuxième ligne de code est parfaite.

Par contre pour l'utilisation de la coloration syntaxique (les balises de code), je n'y parviens pas. Comment Indenté ?

Ex :
While Trim(ActiveCell.Text) Like "*</Placemark>*"
Commenter la réponse de Varinb
0
Merci
While ActiveCell.Text = "</Placemark>"
    
Commenter la réponse de Varin
0
Merci
While ActiveCell.Text = "</Placemark>" 
Commenter la réponse de Varin
0
Merci
Sub Essai()
While ActiveCell.Text = "</Placemark>"
Wend
End Sub
Commenter la réponse de Varin
0
Merci
Comment noter en "résolue" cette question ?
Commenter la réponse de Varin