La conversion entre les numéros de colonne et les références de colonne à l’aide de VBA dans Microsoft Excel
Dans cet article, nous allons créer deux fonctions personnalisées, une fonction pour convertir les numéros de colonne en références de colonne et une autre fonction pour convertir les références de colonne en numéros de colonne.
Les données brutes de cet exemple se composent de deux exemples de données, un exemple de données contient des numéros de colonne aléatoires et le second exemple de données contient des références de colonne aléatoires.
Nous avons créé deux fonctions personnalisées «ColNoToColRef» et «ColRefToColNo». La fonction «ColNoToColRef» est utilisée pour convertir les numéros de colonne en références de colonne. Il prend des valeurs entières comme entrée.
De même, la fonction «ColRefToColNo» est utilisée pour convertir les références de colonne en numéros de colonne.
Explication du code
Cellules (1, ColNo) .Address (True, False, xlA1)
Le code ci-dessus est utilisé pour obtenir l’adresse de la cellule spécifiée.
Gauche (ColNoToColRef, InStr (1, ColNoToColRef, « $ ») – 1)
Le code ci-dessus est utilisé pour extraire le caractère à gauche du symbole «$».
Veuillez suivre ci-dessous pour le code
Option Explicit Function ColNoToColRef(ColNo As Long) As String If ColNo < 1 Or ColNo > Columns.Count Then ColNoToColRef = "Invalid input value" Else 'Finding the address of cell in the first row based on the specified column number ColNoToColRef = Cells(1, ColNo).Address(True, False, xlA1) 'Extracting the column name from the address ColNoToColRef = Left(ColNoToColRef, InStr(1, ColNoToColRef, "$") - 1) End If End Function Function ColRefToColNo(ColRef As String) Dim Rng As Range On Error GoTo LastPart 'Assigning cell in the first row of the specified column reference as range Set Rng = Range(ColRef & "1") 'Getting the column number of the specified range ColRefToColNo = Rng.Column Exit Function LastPart: ColRefToColNo = "Invalid input value" End Function
Si vous avez aimé ce blog, partagez-le avec vos amis sur Facebook et Facebook.
Nous serions ravis de vous entendre, faites-nous savoir comment nous pouvons améliorer notre travail et le rendre meilleur pour vous. Écrivez-nous à [email protected]