[VBA]Découpage d'une variable string
Solid
Messages postés
31
Statut
Membre
-
blux Messages postés 27985 Date d'inscription Statut Modérateur Dernière intervention -
blux Messages postés 27985 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je vodrais savoir s'il est possible de récupérer les caractères d'un string 1 à 1. En fait je voudrais savoir si une variable string contient un caractère particulier. Pour cela je ferais une boucle sur le nombre de caractères de la variable, je récupererait les caractères 1 à 1 dans une autre variable et je testerait si ce caractère est égale ou non au caractère que je souhaite.
Mais je ne sais pas s'il éxiste une fonction permettant cette récupération.
Merci d'avance
Je vodrais savoir s'il est possible de récupérer les caractères d'un string 1 à 1. En fait je voudrais savoir si une variable string contient un caractère particulier. Pour cela je ferais une boucle sur le nombre de caractères de la variable, je récupererait les caractères 1 à 1 dans une autre variable et je testerait si ce caractère est égale ou non au caractère que je souhaite.
Mais je ne sais pas s'il éxiste une fonction permettant cette récupération.
Merci d'avance
A voir également:
- [VBA]Découpage d'une variable string
- Découpage photo instagram - Guide
- Incompatibilité de type vba ✓ - Forum Programmation
- Excel compter cellule couleur sans vba - Guide
- Cannot access offset of type string on string - Forum PHP
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp ✓ - Forum Word
2 réponses
salur Solid,
Il y a mieux : la fonction InStr([start, ]string1, string2[, compare])
start = position ou commence le contrôle dans la chaîne
string1 = chaîne où l'on effectue la recherche
string2 = chaîne recherchée
compare = suivant le type de comparaison (texte ou binaire)
Elle te renvoie la position du caractère recherché, s'il est présent dans la chaine de référence, ou 0.
Il existe aussi InstrRev() qui fait la même chose, mais en commençant la recherche par la fin de la chaîne.
Il y a mieux : la fonction InStr([start, ]string1, string2[, compare])
start = position ou commence le contrôle dans la chaîne
string1 = chaîne où l'on effectue la recherche
string2 = chaîne recherchée
compare = suivant le type de comparaison (texte ou binaire)
Elle te renvoie la position du caractère recherché, s'il est présent dans la chaine de référence, ou 0.
Il existe aussi InstrRev() qui fait la même chose, mais en commençant la recherche par la fin de la chaîne.
question complémentaire à ce topic qui me serait bien utile...
Est-il possible de remplacer un morceau de chaine par une variable.
Dans mon exemple, je souhaite inmporter sous Excel les données d'une URL par la formule :
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www...9110954... _
, Destination:=Range("A1"))
.Name = _
"FFTTfi.php3?session=precision%3D9110954%26reqid%3D200&cler=LEA966RLBwtKw_3"
Cette URL contient 7 chiffres (9110954), que je souhaiterais modifier à volonter en les remplaçants par une variable.
Est-ce possible et comment fais-je ??
Merci de votre aide !
il existe la fonction 'replace' :
Replace(expression, find, replace[, start[, count[, compare]]])
toto=replace(titi,"9110954",ma_variable,1,2)
Met dans toto le contenu de titi, dont on aura remplacé 2 fois la chaine "9110954" par ma_variable (si elle est présente 2 fois, bien sûr !), en commençant la recherche au premier caractère...