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 

11 réponses

Répondre au sujet
jordane45 20032 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 19 février 2018 Dernière intervention - 2 nov. 2017 à 18:43
0
Utile
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
Utile
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 20032 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 19 février 2018 Dernière intervention - 2 nov. 2017 à 18:53
0
Utile
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
Utile
2
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 20032 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 19 février 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 20032 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 19 février 2018 Dernière intervention > jordane45 20032 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 19 février 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
Utile
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
Utile
While ActiveCell.Text = "</Placemark>"
    
Commenter la réponse de Varin
0
Utile
While ActiveCell.Text = "</Placemark>" 
Commenter la réponse de Varin
0
Utile
Sub Essai()
While ActiveCell.Text = "</Placemark>"
Wend
End Sub
Commenter la réponse de Varin
0
Utile
Comment noter en "résolue" cette question ?
Commenter la réponse de Varin