compteur en lettre

Le
Zeus198
bonjour,

j'aimerais créer un "compteur de lettre". je m'explique

lorsque je cliquerai sur un bouton "+", ma lettre "A" passera a la lettre
"B"
lorsque je cliquerai sur "+", ma lettre "B" passera a "C"
lorsque je cliquerai sur "-", "C" passera a "B"

je peux creer une fonction avec des "select case"

existe t il un moyen d'effectuer ce changement par une fonction existante
( avancement ou reculer d'un nombre de lettre donné)

merci d'avance
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Fabien
Le #6382171
bonjour,

j'aimerais créer un "compteur de lettre". je m'explique

lorsque je cliquerai sur un bouton "+", ma lettre "A" passera a la lettre
"B"
lorsque je cliquerai sur "+", ma lettre "B" passera a "C"
lorsque je cliquerai sur "-", "C" passera a "B"

je peux creer une fonction avec des "select case"

existe t il un moyen d'effectuer ce changement par une fonction existante
( avancement ou reculer d'un nombre de lettre donné)

merci d'avance


Salut,

Sachant que A = Chr(65) il suffit d'incrementer ou decrementer la valeur.

Sub OnClic_boutonplus()
me.Moncompteur=chr(asc(me.moncompteur)+1)
endSub

Sub OnClic_boutonmoin()
me.Moncompteur=chr(asc(me.moncompteur)-1)
endSub

A toi de rajouter les test qui vont bien pour ne pas avoir des
caractéres autres dans ton compteur
A = chr(65)..... Z=chr(90)

Eric
Le #6382161
Bonjour,

Soit un controle nommé Texte0 et 2 boutons de commande Plus et Moins, en
supposant que le contrôle ne contienne qu'une seule lettre.

Private Sub Plus_Click()
If Not IsNull(Texte0) Then
If Asc(Texte0) > 64 And Asc(Texte0) < 90 Then
Texte0 = Chr(Asc(Texte0) + 1)
End If
End If
End Sub

Private Sub Moins_Click()
If Not IsNull(Texte0) Then
If Asc(Texte0) > 65 And Asc(Texte0) < 91 Then
Texte0 = Chr(Asc(Texte0) - 1)
End If
End If
End Sub

A tester.



bonjour,

j'aimerais créer un "compteur de lettre". je m'explique

lorsque je cliquerai sur un bouton "+", ma lettre "A" passera a la lettre
"B"
lorsque je cliquerai sur "+", ma lettre "B" passera a "C"
lorsque je cliquerai sur "-", "C" passera a "B"

je peux creer une fonction avec des "select case"

existe t il un moyen d'effectuer ce changement par une fonction existante
( avancement ou reculer d'un nombre de lettre donné)

merci d'avance




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Eric
Le #6382141
re,

Plus sympa avec un contrôle SpinButton car pas besoin de cliquer autant
de fois pour se déplacer, suffit de garder le bouton enfoncé.

Private Sub LeSpin_UpClick()
If Not IsNull(Texte0) Then
If Asc(Texte0) > 64 And Asc(Texte0) < 90 Then
Texte0 = Chr(Asc(Texte0) + 1)
End If
End If
End Sub

Private Sub LeSpin_SpinDown()
If Not IsNull(Texte0) Then
If Asc(Texte0) > 65 And Asc(Texte0) < 91 Then
Texte0 = Chr(Asc(Texte0) - 1)
End If
End If
End Sub

mais risque de problème de portabilité


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Thierry (ze Titi)
Le #6382131
Bonjour Zeus198

Voici un compteur Asccii

Function numéroter(lettreOrigine, incrémenter As Boolean) as String
Dim numAsc
numéroter=lettreOrigine
numAsc=Asc(Right(numéroter),1)
numAsc=IIf(incrémenter,numAsc+1,numAsc-1)
If numAsc‘ And incrémenter Then numAsce
If numAscd And Not incrémenter Then numAsc
numéroter=chr(numAsc)
End Function

Pour l'utiliser:
sur le bouton Plus:
monCompteur=numéroter(monCompteur,True)
sur le bouton Moins
monCompteur=numéroter(monCompteur,False)


Dans ton message 09/11/2007 jour de Saint Théodore, tu as pris l'initiative de nous
narrer les faits suivants:
bonjour,

j'aimerais créer un "compteur de lettre". je m'explique

lorsque je cliquerai sur un bouton "+", ma lettre "A" passera a la lettre "B"
lorsque je cliquerai sur "+", ma lettre "B" passera a "C"
lorsque je cliquerai sur "-", "C" passera a "B"

je peux creer une fonction avec des "select case"

existe t il un moyen d'effectuer ce changement par une fonction existante (
avancement ou reculer d'un nombre de lettre donné)

merci d'avance


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

Eric
Le #6382111
Bonjour Thierry,

Si je puis ...
Au lieu de numAsc=Asc(Right(numéroter),1) mettre peut-être:
numAsc=Asc(Right(numéroter,1)) ;-)

Pas compris pourquoi prendre le 1er caractère par la droite !
De toute façon, la fonction va n'en retourner qu'un.

Argh, l'é's accents dans le nom des fonctions :-(

<aparté> Si l'argument lettreOrigine contient plusieurs lettres, j'aurai
pris le 1er gauche puis concaténation avec le reste mais bon !!!! pas
sûr du résultat obtenu quant à la cohérence.


Bonjour Zeus198

Voici un compteur Asccii

Function numéroter(lettreOrigine, incrémenter As Boolean) as String
Dim numAsc
numéroter=lettreOrigine
numAsc=Asc(Right(numéroter),1)
numAsc=IIf(incrémenter,numAsc+1,numAsc-1)
If numAsc‘ And incrémenter Then numAsce
If numAscd And Not incrémenter Then numAsc
numéroter=chr(numAsc)
End Function

Pour l'utiliser:
sur le bouton Plus:
monCompteur=numéroter(monCompteur,True)
sur le bouton Moins
monCompteur=numéroter(monCompteur,False)




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Thierry (ze Titi)
Le #6382091
Hello Eric !

Si je puis ...
Je t'en prie !


Pas compris pourquoi prendre le 1er caractère par la droite !
De toute façon, la fonction va n'en retourner qu'un.
En fait, je suis reparti d'un compteur que j'avais proposé il y a

quelques temps qui devait ajouter une lettre si arrivé à Z pour la
lettre précédente, ce qui explique le Right. Effectivement, je ne me
suis pas trop foulé pour améliorer tout ça, mea culpa !


Argh, l'é's accents dans le nom des fonctions :-(

<aparté> Si l'argument lettreOrigine contient plusieurs lettres, j'aurai pris
le 1er gauche puis concaténation avec le reste mais bon !!!! pas sûr du
résultat obtenu quant à la cohérence.


Bonjour Zeus198

Voici un compteur Asccii

Function numéroter(lettreOrigine, incrémenter As Boolean) as String
Dim numAsc
numéroter=lettreOrigine
numAsc=Asc(Right(numéroter),1)
numAsc=IIf(incrémenter,numAsc+1,numAsc-1)
If numAsc‘ And incrémenter Then numAsce
If numAscd And Not incrémenter Then numAsc
numéroter=chr(numAsc)
End Function

Pour l'utiliser:
sur le bouton Plus:
monCompteur=numéroter(monCompteur,True)
sur le bouton Moins
monCompteur=numéroter(monCompteur,False)




--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info


Thierry (ze Titi)
Le #6382081
.../...

Ca va donc nous donner:

Function numeroter(lettreOrigine As String, incrementer As Boolean) as String
Dim numAsc
numeroter=lettreOrigine
numAsc=Asc(numeroter)
numAsc=IIf(incrementer,numAsc+1,numAsc-1)
If numAsc‘ And incrementer Then numAsce
If numAscd And Not incrementer Then numAsc
numeroter=chr(numAsc)
End Function

ce qui m'amène à dire que, finalement, cette solution n'est pas plus intéressantes que celles faites par Eric et Fabien...
;o)

--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info
Publicité
Poster une réponse
Anonyme