Peut-on traduire simplement A, B, C, Et c. en 1, 2, 3 ... via VBA?

YANN-56

XLDnaute Barbatruc
Re Bonsoir ou Bonjour,

Encore une question:

Il y a-t-il une façon simple pour exécuter ce dont je parle dans le sujet sans se farcir un
"SelectCase" Et c. puis A = 1, Z = 26 ? Voir se passer d'une Fonction.

Merci par avance pour le "Non" ou la Solution.

Yann
 

YANN-56

XLDnaute Barbatruc
Re : Peut-on traduire simplement A, B, C, Et c. en 1, 2, 3 ... via VBA?

Merci à:
(Par ordre d'entrée en scène)

Pierrot
tototiti
kiseki
DoubleZero

Je n'y ai pas ajouté de Smyley avec un grand sourire, car il est d'évidence!

J'ai seulement fait un classeur appliquant votre aide, au cas où il puisse servir à quelqu'un,
et vous montrer que pépé avait bien compris.....

Je vous souhaite plein de bonnes choses en cette soirée.

Yann
 

Pièces jointes

  • LETTRES_CHIFFRES.xls
    24.5 KB · Affichages: 47
Dernière édition:

Fo_rum

XLDnaute Accro
Re : Peut-on traduire simplement A, B, C, Et c. en 1, 2, 3 ... via VBA?

Bonjour,

petite remarque : attention ActiveSheet n'est pas toujours Worksheets("...") !

autre solution :
Code:
Sub CommandButton1_Click()
  With Sheets("Feuil1") 'inutile si le bouton est sur la feuille
  For i = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
     .Cells(i, 2).Value = .Range(.Cells(i, 1) & 1).Column
  Next
  End With
End Sub
 
Dernière édition:

YANN-56

XLDnaute Barbatruc
Re : Peut-on traduire simplement A, B, C, Et c. en 1, 2, 3 ... via VBA?

Merci Fo_rum,

Quant à l'interprétation de la mise en chiffre des lettres, ton astuce est de celles que j'aime.

Cependant mon exemple n'est sur une feuille, que pour la démonstration de l'efficacité de l'aide que j'ai reçu.

L'objet de cette transcription était en partant d'une Caption d'un Label, ou d'une variable avec une lette "x"

Il n'en demeure pas moins que je te remercie de me rappeler cette affaire de "Worksheets".

Ce n'est pas la première fois que je me plante pour cette raison.

Je l'ai contourné par ailleurs en écrivant:
Dim FEUILLE As Worksheet et utilisé: FEUILLE.Name par la suite.

Tu as raison, je vais devoir réviser ce point pour m'éviter de mauvaises surprises.

Bonne soirée à toi, et Merci encore pour ta judicieuse remarque.

Yann
 

Fo_rum

XLDnaute Accro
Re : Peut-on traduire simplement A, B, C, Et c. en 1, 2, 3 ... via VBA?

Bonsoir

dans ton cas :
Code:
Sub nb()
  Label2.Caption = "Q"
  MsgBox Range(Label2.Caption & 1).Column
  'et un peu plus court avec
  Label1.Caption = "Z"
  MsgBox Cells(1, Label1.Caption).Column
End Sub
à noter que la minuscule ne passe pas dans mon premier exemple avec Cells sans .Value !
Je me suis basé sur l'indentité entre Cells(3,12) et Cells(3,"L").

Là, moi aussi je me fais piéger car je rajoute rarement le .(truc) !
 
Dernière édition:

YANN-56

XLDnaute Barbatruc
Re : Peut-on traduire simplement A, B, C, Et c. en 1, 2, 3 ... via VBA?

Re Fo_rum, et à tous,

Pour aussi montrer le bien fondé de ton idée, je joins sa mise en application.
J'aime beaucoup ce coté astucieux et simple que tu as proposé.

Merci pour ton aide, et au plaisir de te croiser à nouveau.

(Surtout pour moi :))

Yann
 

Pièces jointes

  • LETTRE_CHIFFRE_2.xls
    27 KB · Affichages: 30

TempusFugit

XLDnaute Impliqué
Re : Peut-on traduire simplement A, B, C, Et c. en 1, 2, 3 ... via VBA?

Bonjour


Une autre solution possible
Code:
Private Sub CommandButton1_Click()
Dim l As String
l = UCase("abcdefghijklmnopqrstuwwxyz")
Label1.Caption = InStr(1, l, UCase(TextBox1), 1)
End Sub
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 779
Messages
2 092 046
Membres
105 168
dernier inscrit
makari69