Come convertire i numeri di colonna di Excel in caratteri alfabetici
Introduzione
Questo articolo illustra come usare la funzione Microsoft Visual Basic, Applications Edition (VBA) in Microsoft Excel per convertire i numeri di colonna nel rispettivo indicatore di carattere alfabetico corrispondente per la stessa colonna.
Ad esempio, il numero di colonna 30 viene convertito nei caratteri alfabetici equivalenti "AD".
Ulteriori informazioni
Microsoft fornisce esempi di programmazione a scopo puramente illustrativo, senza alcuna garanzia di qualsiasi tipo, sia espressa che implicita, ivi incluse, senza limitazioni, le garanzie implicite di commerciabilità o idoneità per uno scopo particolare. In questo articolo si presuppone che l'utente conosca il linguaggio di programmazione in questione e gli strumenti utilizzati per creare ed eseguire il debug delle procedure. Gli esperti Microsoft sono autorizzati a fornire spiegazioni in merito alla funzionalità di una particolare routine, ma in nessun caso a modificare questi esempi per fornire funzionalità aggiuntive o a creare routine atte a soddisfare specifiche esigenze.
La funzione ConvertToLetter funziona usando l'algoritmo seguente:
- Si supponga
iCol
che sia il numero di colonna. Arresta seiCol
è minore di 1. - Calcolare il quoziente e il resto in base alla divisione di
(iCol - 1)
per 26 e archiviare in variabilia
eb
. - Convertire il valore intero di
b
nel carattere alfabetico corrispondente (0 => A, 25 => Z) e attivarlo all'inizio della stringa del risultato. - Impostare
iCol
sul divisorea
e sul ciclo.
Ad esempio: il numero di colonna è 30.
(Ciclo 1, passaggio 1) Il numero di colonna è almeno 1, procedere.
(Ciclo 1, passaggio 2) Il numero di colonna minore di uno è diviso per 26:
29 / 26 = 1 resto 3.
a = 1, b = 3
(Ciclo 1, passaggio 3) Virare sulla
(b+1)
lettera dell'alfabeto:3 + 1 = 4, la quarta lettera è "D". Result = "D"
(Ciclo 1, passaggio 4) Indietro al passaggio 1 con
iCol = a
iCol = 1
(Ciclo 2, passaggio 1) Il numero di colonna è almeno 1, procedere.
(Ciclo 2, passaggio 2) Il numero di colonna minore di uno è diviso per 26:
0 / 26 = 0 resto 0.
a = 0, b = 0
(Ciclo 2, passaggio 3) Virare sulla
b+1
lettera dell'alfabeto:0 + 1 = 1, la prima lettera è "A" Result = "AD"
(Ciclo 2, passaggio 4) Indietro al passaggio 1 con
iCol = a
iCol = 0
(Ciclo 3, passaggio 1) Il numero di colonna è minore di 1, stop.
La funzione VBA seguente è solo un modo per convertire i valori dei numeri di colonna nei caratteri alfabetici equivalenti:
Function ConvertToLetter(iCol As Long) As String
Dim a As Long
Dim b As Long
a = iCol
ConvertToLetter = ""
Do While iCol > 0
a = Int((iCol - 1) / 26)
b = (iCol - 1) Mod 26
ConvertToLetter = Chr(b + 65) & ConvertToLetter
iCol = a
Loop
End Function
Nota Questa funzione converte solo i numeri interi passati al carattere di testo alfanumerico equivalente. Non modifica l'aspetto della colonna o delle intestazioni di riga nel foglio di lavoro fisico.
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per