Incrémenter une lettre d'un textbox

lolo34140

XLDnaute Nouveau
Bonjour,

Je souhaiterai récupérer la valeur d'un texbox1 qui est une lettre (A, B, C ou D, ..) et la renvoyer dans un textbox 2 incrémenté de 1 en lettre. Si dans ma textbox1 apparaît A alors dans la textbox2 doit apparaître B.
Sachant que la texbox1 ce rempli automatiquement en allant chercher une lettre dans mon tableau. (je pense que ça n'a pas d'importance).

Merci d'avance!
 

Eljojo_e

XLDnaute Nouveau
Re : Incrémenter une lettre d'un textbox

Bonjour,

Tu devrai utiliser les Chr() en vba.
chr(97) = "a" et chr(122) = z.

en faisant une boucle tu devrai pouvoir t'en sortir :

for a = 97 to 122
if textbox = chr(a) then txtbox2 = chr(a+1) (en gros)
next

cordialement,
 
C

Compte Supprimé 979

Guest
Re : Incrémenter une lettre d'un textbox

Salut Lolo34140

Voici une possibilité ;)
Code:
Sub Test()
  Dim TabLettres As String
  TabLettres = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  Me.TextBox2 = Mid(TabLettres, InStr(1, TabLettres, Me.TextBox1, vbTextCompare) + 1, 1)
End Sub

Edit : oups, salut Eljojo_e, c'est également une solution

A+
 
C

Compte Supprimé 979

Guest
Re : Incrémenter une lettre d'un textbox

Re,

Celle de Eljojo_e aussi,
la mienne à pour avantage que tu peux étendre la suite des lettres en modifiant légèrement le code

A+
 

Fo_rum

XLDnaute Accro
Re : Incrémenter une lettre d'un textbox

Bonjour,

autre proposition qui prend en charge le cas où la lettre saisie est supprimée (avant d'être remplacée).
Code:
Private Sub DTextBox1_Change()
  Dim n As Byte
  TextBox2 = ""
  If TextBox1 <> "" Then
   n = Asc(UCase(TextBox1))
   If n > 64 And n < 90 Then TextBox2 = Chr(n + 1)
  End If
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 554
Messages
2 089 540
Membres
104 206
dernier inscrit
bperring