Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Manipulation de chaînes

3 réponses
Avatar
Jacques
Bonjour,

Pour quelles raisons j'ai ce massage d'erreur "Impossible d'attribuer
une valeur =E0 cet objet"
dans ce code:

Dim iPos As Integer

'--- On supprime les caract=E8res ****
iPos =3D InStr(1, Texte47, "***", vbTextCompare)
Debug.Print Texte47
If iPos > 0 Then Texte47 =3D Left(Texte47, iPos - 1)

Ou se situe mon erreur ?

Merci pour votre aide.

Salutations

3 réponses

Avatar
jero
Salut,
Qui est Texte47 ? Un contrôle zone de texte d'un formulaire ?
Il faudrait en savoir un peu plus...
"Jacques" a écrit dans le message de news:

Bonjour,

Pour quelles raisons j'ai ce massage d'erreur "Impossible d'attribuer
une valeur à cet objet"
dans ce code:

Dim iPos As Integer

'--- On supprime les caractères ****
iPos = InStr(1, Texte47, "***", vbTextCompare)
Debug.Print Texte47
If iPos > 0 Then Texte47 = Left(Texte47, iPos - 1)

Ou se situe mon erreur ?

Merci pour votre aide.

Salutations
Avatar
Jacques
On 25 jan, 15:48, "jero" <~ wrote:
Salut,
Qui est Texte47 ? Un contrôle zone de texte d'un formulaire ?
Il faudrait en savoir un peu plus...
"Jacques" a écrit dans le message de news:

Bonjour,

Pour quelles raisons j'ai ce massage d'erreur "Impossible d'attribuer
une valeur à cet objet"
dans ce code:

Dim iPos As Integer

'--- On supprime les caractères ****
     iPos = InStr(1, Texte47, "***", vbTextCompare)
     Debug.Print Texte47
     If iPos > 0 Then Texte47 = Left(Texte47, iPos - 1)

Ou se situe mon erreur ?

Merci pour votre aide.

Salutations



Bonsoir jéro,

Merci pour ta réponse.

Le texte47 est une zone de texte d'un état.

Son contenu est de ce type :

Me DURAND Josette *** Tél domicile 00 00 00 00 00 - Tél portable 00
00 00 00 00 - Email

Salutations.
Avatar
3stone
Salut,

[...]
Le texte47 est une zone de texte d'un état.

Son contenu est de ce type :

Me DURAND Josette *** Tél domicile 00 00 00 00 00 - Tél portable 00
00 00 00 00 - Email




Ouiiilllouilleeee !

- D'où vient un tel amalgame de données ?

- Si la source des données n'est pas maitrisées, pourquoi
ne pas faire cela dans la requête source de cet état ?

Dans la requête qui alimente l'état, on créera donc
un champ calculé qui contiendra l'extraction:

NomPrenom:
iif(InStr([ChampPoubelle];"***");
Trim(Left([ChampPoubelle];
InStr([ChampPoubelle];"***")-1));"")

le tout sur UNE ligne, bien sûr.

NB:
Ici, si absence de "***" le champ sera vide.
Si l'on souhaite un autre comportement, modifier la chaîne vide à la fin
- les "" étant le 3e parametre du iif()

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)