Definir de manière simple un ensemble de carractères sous forme de variable

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

manu_tella

XLDnaute Junior
Bonjour,

je cherche a definir de manière simple un ensemble de carractères.
Je n'arrive pas à mes fins...quelqu'un peut-il m'aiguiller?

' Je declare A
Dim A As String
...
' Je liste les valeurs que peut prendre A
A = "!?,.;🙁)' 1234567890+-*=/€£$%[]"
...
'Je cherche a arreter le code lorsque je rencontre 1 des carractères defini dans la liste
If Right(CollWord(x), 1) = A Then Exit sub
else.....

Mais voila, ca fonctionne pas....

un coup de main?

d'avance merci
 
Re : Definir de manière simple un ensemble de carractères sous forme de variable

Bonjour manu_tella,
ta demande n'est pas bien claire, mais pour la liste de valeurs doit être dans un tableau
comme suit:

Code:
Dim monTableau(1 To 27)
  monTableau(1) = "!"
  monTableau(2) = "?"
  monTableau(3) = ","
  monTableau(4) = "."
  monTableau(5) = ";"
  monTableau(6) = ")'"
  monTableau(7) = "1"
  monTableau(8) = "2"
  monTableau(9) = "3"
  monTableau(10) = "4"
  monTableau(11) = "5"
  monTableau(12) = "6"
  monTableau(13) = "7"
  monTableau(14) = "8"
  monTableau(15) = "9"
  monTableau(16) = "0"
  monTableau(17) = "+"
  monTableau(18) = "-"
  monTableau(19) = "*"
  monTableau(20) = "="
  monTableau(21) = "/"
  monTableau(22) = "€"
  monTableau(23) = "£"
  monTableau(24) = "$"
  monTableau(25) = "%"
  monTableau(26) = "["
  monTableau(27) = "]"
  
  v = Right(CollWord(x), 1)
  If IsError(Application.Match(v, monTableau, 0)) Then
    MsgBox "Non trouvé"
  Else
    MsgBox "Trouvé"
  End If



il faut mettre ton classeur en pièce joint pour mieux venir à ton aide.
 
Re : Definir de manière simple un ensemble de carractères sous forme de variable

Bonjour,

Pour le moment, je n'ai pas de classeur, je griffonne sur vba pour comprendre.
je veux recuperer dans word des chaines de carractères séparées par des espaces et les recopier dans excel...
Mais, il y a des carracteres que je ne souhaite pas recuperer (ceux de la liste A).
Je souhaite donc identifier ces carractères sous vba et passer à la chaine suivante.

merci d'avance.

manu
 
Re : Definir de manière simple un ensemble de carractères sous forme de variable

Bonsour®

Dim Idx As Integer
Dim MaChaine As String
MaChaine = "!?,.😉' 1234567890+-*=/€£$%[]"
...
For Idx=1 to Len(CollWord(x)) : If Instr(collWord(x), Mid(MaChaine,Idx,1))<>0 Then Exit Sub : Next
...
 
Re : Definir de manière simple un ensemble de carractères sous forme de variable

re,

merci pour ce bout de code je n'arrive pas à l'integrer aussi facilement.
En fait l'idée c'est d'eviter de compliquer mon code...

If Right(CollWord(x), 1) = "," Or Right(CollWord(x), 1) = "]" Or Right(CollWord(x), 1) = ")" ...
je voudrais juste declarer une variable A = "!?,.😉' 1234567890+-*=/€£$%[]" et n'avoir juste dans le coeur du code que:
If Right(CollWord(x), 1) (appartient à) A ...

le hic c'est "appartient à" ca marche pas dans VBA 😀
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour