Info sur une zone de texte

cs_krousty Messages postés 29 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 25 mai 2008 - 2 juin 2005 à 22:08
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 - 6 juin 2005 à 13:43
bonjour ,

je voulais savoir , j ai une zone de texe dans laquel on peut mettre
24 caracteres , j ai aussi mis en alignement aux centres je
voudrai pouvoir recupérer ( en vu d etre traduit en ascii) se qu il y a
ds la zone de texte meme les espace avant et apres le texte en lui meme


par exemple :

dans la zone de texte :"
bonjour " ( 8 espace ,
bonjour , 9espace )

donc je voudrai pouvoir recupéré les 8espace avant le bonjour é les 9
espaces apres ceci pour etre traduit en ascii et envoyer vers un
panneau lumineux dou le souci de centralisation du texte

je vous remercie pour vos reponse j espre que vous pourai maider @ bientot

12 réponses

jpleroisse Messages postés 1788 Date d'inscription mardi 7 novembre 2000 Statut Membre Dernière intervention 11 mars 2006 27
2 juin 2005 à 22:19
Bonsoir,



Private Sub Command1_Click()

Dim MaVar, s

MaVar = " Bonjour "

s = Left$(MaVar, 24)

Text1 = s

End Sub



jpleroisse
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
3 juin 2005 à 01:18
Lut,
Cette function sort une chaine ascii par rapport au texte entré avec les espaces
il te faut pour tester un label un textbox et un commandbutton

Private Sub CommandButton1_Click()
Label1 = TextASCII(TextBox1.Text)
End Sub

<HR>

Private Function TextASCII(Text As String) As String
Dim LenT As Integer, Sa As Integer, Se As Integer, Retour As String, i As Integer
LenT = Len(Text)
Sa = (24 - LenT%) / 2
Se = 24 - LenT - Sa
If Text <> "" Then
For i = 1 To Sa
Retour = Retour & Asc(" ")
Next

For i = 1 To LenT
Retour = Retour & Asc((Mid(Text, i, 1)))
Next

For i = 1 To Se
Retour = Retour & Asc(" ")
Next
Else
Retour = String(24, "32")
End If
TextASCII = Retour
End Function

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
3 juin 2005 à 01:32
Oups petite erreur aprés le else
Else
For i = 1 To 24
Retour = Retour & Asc(" ")
Next
End If

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
3 juin 2005 à 01:51
Revu est corrigé maxlen pour s'adapter à la longueur de ta textbox 24 par defaut

<HR>
Private Function TextASCII(Text As String, Optional Maxlen As Integer = 24) As String
Dim LenT As Integer, Sa As Integer, Se As Integer, Retour As String, i As Integer
LenT = Len(Text)
Sa = (Maxlen - LenT) / 2
Se = Maxlen - LenT - Sa
If Text <> "" Then
Text = Space(Sa) & Text & Space(Se)
For i = 1 To Maxlen
Retour = Retour & Asc(Mid(Text, i, 1))
Next
Else
For i = 1 To Maxlen
Retour = Retour & Asc(" ")
Next
End If
TextASCII = Retour
End Function

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_krousty Messages postés 29 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 25 mai 2008
3 juin 2005 à 13:42
merci mais il y a un details que je ne saisie pas en effet qd je rajoute la cmd
DoCmd.OpenForm "reception", , , , acFormReadOnly
Forms!reception!recoi = res
ds ma fonction cela marche parfaitemente mais qd je la mais en deoous de la l apel de la fonction sa ne marche pas
Dim result As String
result = TextASCII(txt1)
DoCmd.OpenForm "reception", , , , acFormReadOnly
Forms!reception!recoi = result

de plus je voudrais je voudrai recupérai le resultat de 4 zone de txt de la meme maniere sa ne renvoi rien non plus jpensé a un truc du genre
result = TextASCII(txt1) & TextASCII(txt2) & TextASCII(txt3) & TextASCII(txt4)

si vou pouviais meclercir la dessus je vous prie

mercie encore a bientot
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
3 juin 2005 à 14:05
J'ai pas trop saisi ce que tu veux dire......
Testes en la passant en public
Public Function TextASCII(Text As String, Optional Maxlen As Integer = 24) As String

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
3 juin 2005 à 14:19
Re,
ceci doit fonctinner j'ai testé c'est bon
result = TextASCII(txt1) & TextASCII(txt2) & TextASCII(txt3) & TextASCII(txt4)
Tu prog en quoi ? VBA? , VB?, VBA ACCESS?

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
cs_krousty Messages postés 29 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 25 mai 2008
3 juin 2005 à 14:40
en faite je suis sur un formulaire qui est le resultat d une requette , je me retouve ac pour chaque lignes 4 zone de texte ( comme dans l exemple http://krousty.free.fr/index.php?include=img&chemin=ftp//fotos&nomfichier=requete.bmp)
je voudrai donc pouvoir ajouter a la suite les 4 zone de textes et parcourir ainsi tou les resultats donc javé pensé a
Private Sub send_Click()
Dim result As String


Set bd = CurrentDb
Set matable = bd.OpenRecordset("requete1")
matable.MoveFirst
Do While Not matable.EOF

result = result & TextASCII(txt1) & TextASCII(txt2) & TextASCII(txt3) & TextASCII(txt4)

matable.MoveNext
Loop
matable.Close

DoCmd.OpenForm "reception", , , , acFormReadOnly
Forms!reception!recoi = result
End Sub

ce qui aurai pour but de metre a la suite toute les zone de texte ac les espace entre chaque txt mais malheresement sa ne donne rien
donc jvoulai savoir se qui n allé pa dans ce code
je vous remercie deja pr tt votre aide
@ bientot jespere
0
cs_krousty Messages postés 29 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 25 mai 2008
3 juin 2005 à 15:15
excuser moi sa marchais parfaitement bien (enfin sauf le parcour du resultat de la requete lol ) j avais oublier juste un truc merci encore
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
3 juin 2005 à 15:26
Bon je n'ai pas eu accés a toutes les images de ta page mais bon....
Quand tu fais un
Do While .....
.....
.....
Loop
Tu ne récupère surement pas la valeur de tes text1(si ce sont des textbox)
tu dois récupèrer la valeur de tes champs
Do While Not matable.EOF
result = result & TextASCII(matable!champ1) & TextASCII(matable!champ2) & TextASCII(matable!champ3) & TextASCII(matable!champ4)
.......
.......

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
cs_krousty Messages postés 29 Date d'inscription mardi 17 mai 2005 Statut Membre Dernière intervention 25 mai 2008
5 juin 2005 à 21:59
le probleme que je rencontre est le suivant : quand j execute le code j un probleme a la ligne :" Set matable = bd.OpenRecordset("requete1")" le debogage me dis " ereur d'execution 3061: trop peu de parametre.1attendu "
si vous pouvier maider je vous remercie
@ bientot
0
valtrase Messages postés 937 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 9 mai 2022 3
6 juin 2005 à 13:43
Oui a la fin tu dois mettre ta connexion et le type de curseur

Cordialement, Jean-Paul
______________________________________________________________________

Le Savoir n'a de valeur que s'il est partagé
0
Rejoignez-nous