VBA : Comment convertir un numéro de colonne en lettre
Vous pouvez utiliser la syntaxe suivante dans VBA pour convertir un numéro de colonne en lettre :
Sub ConvertNumberToLetter()
Range("B2") = Split((Columns(Range("A2")).Address(, 0)), ":")(0)
End Sub
Cette macro particulière convertira le numéro de colonne de la cellule A2 en lettre et affichera la lettre dans la cellule B2 .
Par exemple, si la valeur dans la cellule A2 est 4 alors la cellule B2 affichera « D » puisque c’est la lettre qui correspond à la quatrième colonne dans Excel.
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : convertir le numéro de colonne en lettre dans VBA
Supposons que nous souhaitions savoir quelle lettre de colonne correspond à un numéro de colonne de 4 dans Excel :
Nous pouvons créer la macro suivante pour convertir ce nombre en lettre :
Sub ConvertNumberToLetter()
Range("B2") = Split((Columns(Range("A2")).Address(, 0)), ":")(0)
End Sub
Lorsque nous exécutons cette macro, nous recevons le résultat suivant :
La cellule B2 affiche la valeur « D » puisque c’est la lettre qui correspond à la quatrième colonne.
Si nous modifions le numéro dans la cellule A2 et exécutons à nouveau la macro, la cellule B2 affichera la lettre de colonne mise à jour.
Par exemple, supposons que nous modifiions le nombre de la cellule A2 en 73 et que nous exécutions à nouveau la macro :
La cellule B2 affiche désormais la valeur « BU » puisqu’il s’agit de la lettre de colonne qui correspond à la 73ème colonne.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
VBA : Comment trouver la dernière ligne utilisée
VBA : Comment trouver la dernière colonne utilisée
VBA : Comment compter le nombre de colonnes utilisées