Peut-on soustraire des chaines ?

Résolu
nono78220 Messages postés 181 Date d'inscription dimanche 3 décembre 2006 Statut Membre Dernière intervention 28 octobre 2010 - 26 févr. 2007 à 16:06
nono78220 Messages postés 181 Date d'inscription dimanche 3 décembre 2006 Statut Membre Dernière intervention 28 octobre 2010 - 27 févr. 2007 à 09:49
Hello,

imaginons cette variable
strNono = nono
strVa = va
strTest = strNono & strVa & "bien"

Comment obtenir que bien ?
Peut-on faire par exemple:
strBien = strTest - strNono - strVa

Ou ne peut-on utiliser que instr ?

4 réponses

Profil bloqué
26 févr. 2007 à 22:45
bonjour
La soustraction de chaines n'existe pasL'addition non plus d'ailleurs bien que l'on puisse écrire : strTest strNono + strVa + "bien" qui équivaut à strTest strNono & strVa & "bien"
Le terme exact est la concaténation de chaines c'est-à-dire la mise bout à bout de ces mêmes chaines et  il est  préférable d'utiliser l'opérateur &  pour cela

GRENIER Alain[8D]
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
26 févr. 2007 à 16:12
Salut,
Je ne sais pas si cela peut t'aider mais essaie ceci
Dim strNono  As String
Dim strVa  As String
Dim StrTest As String
Dim StrBien As String
strNono = "nono"
strVa = "va"
StrTest = strNono & strVa & "bien"
StrBien = Mid(StrTest, (Len(strNono) + Len(strVa) + 1))
MsgBox StrBien, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
26 févr. 2007 à 17:19
Bonsoir,

"soustraire" des chaînes de veut pas dire grand chose !

A la limite :
1) trouver dans une chaîne les mots qui ne seraient pas dans l'autre
ou
2) enlever d'une chaîne tous les mots de l'autre et alors :

- a) quel que soit leur ordre ?
ou
b) s'ils sont dans le même ordre et
  - qu'ils se suivent ?
  - dans le même ordre mais sans se suivre ?

Il va te falloir te montrer extrêmement précis dans la définition de ce que tu cherches à faire là si tu ne souhaites pas une dispersion dans rous les sens !
0
nono78220 Messages postés 181 Date d'inscription dimanche 3 décembre 2006 Statut Membre Dernière intervention 28 octobre 2010
27 févr. 2007 à 09:49
Hello,


Je n' ai tout d'abord pas encore tester ce que me propose jrivet. Mais voici ce que je recherche:
Imaginons cher jmmarques une variable test (string) qui prend la valeur suivante à l'ouverture d'un dossier strTest = "X Y VBFrance"
et que dans cette variable test, VBFrance est connu car extrait à l'ouverture d'un dossier (grace à ton code qui fonctionne encore royalement bien)

Ma question est la suivante: comment faire pour extraire X et Y. Il serait facile pour cela de faire:
dim str Bobo
Bobo = strTest - VBFrance   ' Or ce n'est pas possible !

Maintenant je peux utiliser la fonction right, car VBFrance est de longueur fixe. Dans ce cas, j'obtiens
Bobo = "X Y"

La vient le problème: si X et Y sont de longueur variable, je ne peux utiliser left ou mid.
Quelle est alors la solution ? N'y a t'il que instr pour extraire une chaine de longueur variable à l'intérieur d'une autre chaîne ?
0
Rejoignez-nous