Convertir des chiifres en lettre sur Excel ve

adtrl -  
eriiic Messages postés 25847 Statut Contributeur -
Bonjour,

Je me retrouve face à un petit problème sur un fichier excel. Je souhaite transformer une colonne de chiffres ( de 1 à 525) en alphabet du genre 1 = A, 2 =B, .... 27=AA, 28 = AB...

Y a t-il un moyen de faire cela?
Ou une solution comme pour les chiffres lorsque l'on saisi de 1 à 3 et que l'on 'tire la dernière cellule', la suite se fait toute seule 4, 5, 6, 7,..... j'aimerais faire de même pour les lettres A, B, C et lorsque je tire la liste continue avec D, E, F ......?

Quelqu'un peut m'aider svp?
A voir également:

6 réponses

michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
bonjour
de 1 à 260 uniquement (A==>2 lettres): fonction personnalisée

Function car_col(num As Byte) As String
Dim serie As Byte
Select Case num
    Case Is = 0
        car_col = "#########"
    Case Is < 27
        car_col = Chr(64 + num)
    Case Else
        serie = Int((num  - 26) / 27) + 1
        car_col = Chr(64 + serie) & Chr(64 + num - 26 * serie)
End Select

End Function
0
adtrl
 
Pouvez vous m'expliquer mettre cette formule? Comment cela fonctionne t-il?
N'y a t-il pas un moyen plus simple comme taper A puis au dessous B puis au dessous C et ensuite faire glisser la dernière cellule pour que le D, E , F ... se mettent dans les case au dessous comme pour les chiffres?
Merci
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
si c'était si simple pourquoi poser une question ?

rappel de la question
Je souhaite transformer une colonne de chiffres ( de 1 à 525) en alphabet du genre 1 = A, 2 =B, .... 27=AA, 28 = AB...
quel rapport avec
taper A puis au dessous B puis au dessous C et ensuite faire glisser la dernière cellule pour que le D, E , F

Désolé
0
adtrl
 
Pourquoi poser la question? Parce que je ne connais pas la réponse, et que je demande un eu d'aide aux gens qui connaissent le logiciel mieux que moi, parce que je suis face à un problème. Mais il me semble que dans tous les cas, personne n'est obligé de répondre lorsqu'il n'en a pas envie non?Alors pourquoi me rentrer dedans comme cela? Pourquoi ironiser et démonter mes propos et ce que j'essaie d'expliquer?

Bref, pour les autres personnes lisant ce post et qui souhaitent m'aider :
j'ai posé plusieurs questions. Mon problème est que je dois créer une colonne de lettres de la lettre A (caractère 1) jusqu'à la lettre JK (caractère 266)( il me semble) et que je trouve très fastidieux de taper chaque lettre dans une case.
J'ai pensé créer une colonne de chiffres puis la transformer en lettre, ou de créer une colonne de lettre. Je cherche une solution pour arriver à mes fins, si jamais vous avez une technique, une idée et que vous pouvez me la faire partager en m'expliquant les manipulations à faire, merci de m'en faire part.
0
Vaucluse Messages postés 27336 Statut Contributeur 6 441
 
B onjour
une méthode qui va (peut être) vous simplifier (un tout petit peu) la vie:
revenat à votre premier message qui stipule de 1 à 525

1°)En colonne A:
inscrivez par "tirage" les chiffres de 1 à 525
en colonne B de 1 à 26
inscrivez, toujours par tirage, les lettres de A à Z (ça excel sait faire en principe)

2°)Ensuite, suivez moi bien!!
sur B27, la formule:
=INDIRECT("B"&ENT(A26/26))&B1
a tirez en l'état jusqu' à la ligne 52 pas plus loin

3°)sélectionnez le champ B27:B52
Edition / Remplacez :
B par B$
ceci pour bloquer la formule B dans ce tableau

4°)ensuite avec tout le champ complet sélectionné de B27 à B52, tirez jusqu'à la ligne 525, ça devrait afficher les codes.
(Enfin, chez moi ça le fait!)
0
adtrl
 
Bonjour,

Tout d'abord merci de votre aide.
j'ai oublié de préciser que ma version de excel est 2007 (cela à peut être une incidence).
j'ai essayé votre technique mais je n'arrive pas au résultat voulu.
Dans la partie 1 :vous me dites ' inscrivez, toujours par tirage, les lettres de A à Z (ça excel sait faire en principe) ' --> dans quelle colonne cela doit être noté? je n'arrive pas à faire de 'tirage' pour les lettres, est ce que une configuration?, quelque chose à paramétrer?

Merci d'avance
0
Vaucluse Messages postés 27336 Statut Contributeur 6 441
 
Bonsoir
effectivement, il faut créer la liste, mais ça n'est pas indispensable.
ci joint un modéle de l'ensemble avec les explications.
Il vous restera toutefois à chercher les chemins sur 2007 que je ne connais pas assez pour vous aider dans le domaine des manip à faire
http://www.cijoint.fr/cjlink.php?file=cj200912/cijcccrytb.xls
en souhaitant que ce soit ce que vous attendez.
Crdlmnt
0

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

Posez votre question
eriiic Messages postés 25847 Statut Contributeur 7 279
 
Bonsoir tout le monde,

avec tes nombres en colonne A tu peux écrire :
=SUBSTITUE(CAR((A1-MOD(A1-1;26)-1)/26+64);"@";"")&CAR(MOD(A1-1;26)+65)
à recopier vers le bas

et si tu veux te passer de la colonne des nombres alors (en ligne 1) :
=SUBSTITUE(CAR((LIGNE()-MOD(LIGNE()-1;26)-1)/26+64);"@";"")&CAR(MOD(LIGNE()-1;26)+65)

en remplaçant les 3 LIGNE() par LIGNE()-1 si tu commences en ligne 2 (-2 si ligne 3 etc)
C'est à dire pour début en ligne 2 :
=SUBSTITUE(CAR((LIGNE()-1-MOD(LIGNE()-2;26)-1)/26+64);"@";"")&CAR(MOD(LIGNE()-2;26)+65)

eric
0
eriiic Messages postés 25847 Statut Contributeur 7 279
 
une autre plus simple :

en ligne 1 :
=GAUCHE(ADRESSE(1;LIGNE();4;1);NBCAR(ADRESSE(1;LIGNE();4;1))-1)

et pareil, si début en ligne 2 remplacer les 2 ligne() par ligne()-1 etc

eric
0