est il possible d'inserer une donnée (texte ou nombre peu importe) dans un
texte dans le cas suivant:
un cadre texte avec le curseur à n'importe quel endroit dedans,
une valeur obtenue et inserée en cliquant sur un bouton
Il faudrait pouvoir connaitre et enregistrer la position du curseur au sein
du texte (ce que je ne sait pas faire), et en VBA utiliser inStr ( là pas de
problème)
A moins qu'il y ait une autre méthode
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gafish
Bonjour,
Pour récupére la position du curseur, utilise la propriété SelStart de ta zone de texte. Attention toutefois, pour que la propriété marche, la zone de texte doit avoir le focus, et quand tu cliques sur le bouton, ta zone perd le focus et tu risques d'avoir un message d'erreur. Il faut donc que tu stockes quelque part (zone de texte cachée, variable globale au form...) la position du curseur à la perte de focus de ta zone (utilise l'evenement lost focus de ta zone de texte) et ensuite tu pourras réutiliser cette valeur dans l'evenement clic sur ton bouton.
Arnaud
"PatLabor" <patrice.poitevin@(à effacer)wanadoo.fr> a écrit dans le message news: eis#
Bonjours à tous
est il possible d'inserer une donnée (texte ou nombre peu importe) dans un texte dans le cas suivant: un cadre texte avec le curseur à n'importe quel endroit dedans, une valeur obtenue et inserée en cliquant sur un bouton
Il faudrait pouvoir connaitre et enregistrer la position du curseur au sein
du texte (ce que je ne sait pas faire), et en VBA utiliser inStr ( là pas de
problème) A moins qu'il y ait une autre méthode
Merci pour toute réponse
Bonjour,
Pour récupére la position du curseur, utilise la propriété SelStart de ta
zone de texte.
Attention toutefois, pour que la propriété marche, la zone de texte doit
avoir le focus, et quand tu cliques sur le bouton, ta zone perd le focus et
tu risques d'avoir un message d'erreur.
Il faut donc que tu stockes quelque part (zone de texte cachée, variable
globale au form...) la position du curseur à la perte de focus de ta zone
(utilise l'evenement lost focus de ta zone de texte) et ensuite tu pourras
réutiliser cette valeur dans l'evenement clic sur ton bouton.
Arnaud
"PatLabor" <patrice.poitevin@(à effacer)wanadoo.fr> a écrit dans le message
news: eis#XDe4EHA.2156@TK2MSFTNGP10.phx.gbl...
Bonjours à tous
est il possible d'inserer une donnée (texte ou nombre peu importe) dans un
texte dans le cas suivant:
un cadre texte avec le curseur à n'importe quel endroit dedans,
une valeur obtenue et inserée en cliquant sur un bouton
Il faudrait pouvoir connaitre et enregistrer la position du curseur au
sein
du texte (ce que je ne sait pas faire), et en VBA utiliser inStr ( là pas
de
Pour récupére la position du curseur, utilise la propriété SelStart de ta zone de texte. Attention toutefois, pour que la propriété marche, la zone de texte doit avoir le focus, et quand tu cliques sur le bouton, ta zone perd le focus et tu risques d'avoir un message d'erreur. Il faut donc que tu stockes quelque part (zone de texte cachée, variable globale au form...) la position du curseur à la perte de focus de ta zone (utilise l'evenement lost focus de ta zone de texte) et ensuite tu pourras réutiliser cette valeur dans l'evenement clic sur ton bouton.
Arnaud
"PatLabor" <patrice.poitevin@(à effacer)wanadoo.fr> a écrit dans le message news: eis#
Bonjours à tous
est il possible d'inserer une donnée (texte ou nombre peu importe) dans un texte dans le cas suivant: un cadre texte avec le curseur à n'importe quel endroit dedans, une valeur obtenue et inserée en cliquant sur un bouton
Il faudrait pouvoir connaitre et enregistrer la position du curseur au sein
du texte (ce que je ne sait pas faire), et en VBA utiliser inStr ( là pas de
j'ai l'impression qu'il ne prend en compte que le texte déjà enregistré, pas celui que je vient de taper
il me donne 0, alors que je suis à la fin de 4 lignes!
y a t'il une solution ?? Merci pour l'aide
Raymond [mvp]
Bonjour. pour insérer un texte composé dans le contrôle précédent, dans un contrôle texte, il faut faire: soit texte48 le contrôle texte qui contient 1234567890 et dans lequel il faut insérer le contenu du contrôle précédent de valeur ABCD entre le 5 et le 6 pour obtenir une nouvelle valeur 12345ABCD67890 dans texte48. composer ABCD dans le contrôle précédent, cliquer entre le 5 et le 6 dans texte48.
Private Sub Texte48_Click() Me.Texte48 = Left(Me.Texte48.Text, Me.Texte48.SelStart) & Screen.PreviousControl & Mid(Me.Texte48.Text, Me.Texte48.SelStart + 1) End Sub -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"PatLabor" <patrice.poitevin@(à effacer)wanadoo.fr> a écrit dans le message de news:
Et ZUT
cela marche ... de temps en temps
j'ai l'impression qu'il ne prend en compte que le texte déjà enregistré, pas celui que je vient de taper
il me donne 0, alors que je suis à la fin de 4 lignes!
y a t'il une solution ?? Merci pour l'aide
Bonjour.
pour insérer un texte composé dans le contrôle précédent, dans un contrôle
texte, il faut faire:
soit texte48 le contrôle texte qui contient 1234567890 et dans lequel il
faut insérer le contenu du contrôle précédent de valeur ABCD entre le 5 et
le 6 pour obtenir une nouvelle valeur 12345ABCD67890 dans texte48.
composer ABCD dans le contrôle précédent, cliquer entre le 5 et le 6 dans
texte48.
Private Sub Texte48_Click()
Me.Texte48 = Left(Me.Texte48.Text, Me.Texte48.SelStart) &
Screen.PreviousControl & Mid(Me.Texte48.Text, Me.Texte48.SelStart + 1)
End Sub
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"PatLabor" <patrice.poitevin@(à effacer)wanadoo.fr> a écrit dans le message
de news: eOINpxe4EHA.2192@TK2MSFTNGP14.phx.gbl...
Et ZUT
cela marche ... de temps en temps
j'ai l'impression qu'il ne prend en compte que le texte déjà enregistré,
pas
celui que je vient de taper
il me donne 0, alors que je suis à la fin de 4 lignes!
Bonjour. pour insérer un texte composé dans le contrôle précédent, dans un contrôle texte, il faut faire: soit texte48 le contrôle texte qui contient 1234567890 et dans lequel il faut insérer le contenu du contrôle précédent de valeur ABCD entre le 5 et le 6 pour obtenir une nouvelle valeur 12345ABCD67890 dans texte48. composer ABCD dans le contrôle précédent, cliquer entre le 5 et le 6 dans texte48.
Private Sub Texte48_Click() Me.Texte48 = Left(Me.Texte48.Text, Me.Texte48.SelStart) & Screen.PreviousControl & Mid(Me.Texte48.Text, Me.Texte48.SelStart + 1) End Sub -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"PatLabor" <patrice.poitevin@(à effacer)wanadoo.fr> a écrit dans le message de news:
Et ZUT
cela marche ... de temps en temps
j'ai l'impression qu'il ne prend en compte que le texte déjà enregistré, pas celui que je vient de taper
il me donne 0, alors que je suis à la fin de 4 lignes!