Содржина
Во ова упатство, ќе разгледаме како да ги смените броевите на колоните на Excel на соодветните азбучни знаци.
Кога градите сложени формули во Excel, понекогаш можеби ќе треба да добиете колона буква од одредена ќелија или од даден број. Ова може да се направи на два начина: со користење вградени функции или прилагодена.
Како да го претворите бројот на колоната во азбука (колони со една буква)
Во случај името на колоната се состои од една буква, од A до Z, можете да ја добиете со користење на оваа едноставна формула:
CHAR(64 + col_number)На пример, да го претворите бројот 10 во буква од колона, формулата е:
=CHAR(64 + 10)
Исто така е можно да внесете број во некоја ќелија и да се повикате на таа ќелија во вашата формула:
=CHAR(64 + A2)
Како функционира оваа формула:
Функцијата CHAR враќа знак врз основа на кодот на знаци во комплетот ASCII. ASCII вредностите на големите букви од англиската азбука се 65 (A) до 90 (Z). Значи, за да ја добиете шифрата на знаци со големи букви А, додавате 1 до 64; за да го добиете кодот на знакот со големи букви B, додавате 2 на 64 и така натаму.
Како да го конвертирате бројот на колоната на Excel во буква (која било колона)
Ако барате разноврсна формула која работи за која било колона во Excel (1 буква, 2 буква и 3 букви), тогаш ќе треба да користите малку посложена синтакса:
SUBSTITUTE(ADDRESS(1, col_number, 4 ), "1", "")Соколона буква во А2, формулата ја има оваа форма:
=SUBSTITUTE(ADDRESS(1, A2, 4), "1", "")
Како функционира оваа формула:
Прво, конструирате адреса на ќелија со бројот на колоната на интерес. За ова, доставете ги следните аргументи на функцијата АДРЕС:
- 1 за row_num (бројот на редот навистина не е важен, па можете да користите кој било).
- A2 (ќелијата што го содржи бројот на колоната) за column_num .
- 4 за abs_num аргумент за враќање на релативна референца.
Со горенаведените параметри, функцијата ADDRESS ја враќа текстуалната низа „A1“ како резултат.
Бидејќи ни е потребна само буква од колона, го бришеме бројот на редот со помош на функцијата SUBSTITUTE, која бара „1“ (или кој и да е број на ред што сте го шифрирале во функцијата АДРЕС) во текстот „A1“ и го заменува со празна низа („“).
Добијте буква од колона од број на колона користејќи приспособена функција Приспособена функција
Ако треба редовно да ги конвертирате броевите на колоните во азбучни знаци, тогаш прилагодената функција дефинирана од корисникот (UDF) може неизмерно да ви заштеди време.
Шифрата на функцијата е убава обична и јасна:
Колона за јавна функција (col_nu m) ColumnLetter = Split(Cells(1, col_num).Адреса, "$" )(1) Крајна функцијаОвде, го користиме својството Cells за да се однесува на ќелијата во редот 1 и наведен број на колона и својство Адреса за враќање aниза што содржи апсолутна референца за таа ќелија (како што е $A$1). Потоа, функцијата Split ја раскинува вратената низа на поединечни елементи користејќи го знакот $ како сепаратор и го враќаме елементот (1), кој е буквата на колоната.
Залепете го кодот во уредникот VBA и вашиот новата функција ColumnLetter е подготвена за употреба. За детално упатство, погледнете: Како да вметнете VBA код во Excel.
Од гледна точка на крајниот корисник, синтаксата на функцијата е едноставна како оваа:
ColumnLetter(col_num)Каде col_num е бројот на колоната што сакате да го претворите во буква.
Вашата вистинска формула може да изгледа вака:
=ColumnLetter(A2)
И ќе се врати токму истите резултати како и природните функции на Excel за кои се дискутираше во претходниот пример:
Како да се добие колона буква од одредена ќелија
Да се идентификува буквата од колона од специфична ќелија, користете ја функцијата COLUMN за да го вратите бројот на колоната и послужете го тој број на функцијата АДРЕС. Целосната формула ќе ја има оваа форма:
SUBSTITUTE(ADDRESS(1, COLUMN( cell_address), 4), "1", "")Како пример, да најдеме буква од колона од ќелијата C5:
=SUBSTITUTE(ADDRESS(1, COLUMN(C5), 4), "1", "")
Очигледно, резултатот е „C“ :)
Како да се добие колона буква од тековната cell
За да се разработи буквата од тековната ќелија, формулата е речиси иста како во горниот пример. Единствената разлика е во тоа што функцијата COLUMN() есе користи со празен аргумент за да се однесува на ќелијата каде што формулата е:
=SUBSTITUTE(ADDRESS(1, COLUMN(), 4), "1", "")
Како да креирате референца за динамички опсег од број на колона
Се надеваме дека претходните примери ви дадоа некои нови теми за размислување, но можеби се прашувате за практичните апликации.
Во овој пример, ќе ви покажеме како да го користите „бројот на колоната до буквата Формула за решавање на задачи од реалниот живот. Конкретно, ќе создадеме динамична формула XLOOKUP која ќе ги повлече вредностите од одредена колона врз основа на нејзиниот број.
Од табелата за примерок подолу, да претпоставиме дека сакате да добиете бројка за профит за даден проект (H2 ) и недела (H3).
За да ја исполните задачата, треба да му обезбедите на XLOOKUP опсегот од кој ќе се вратат вредностите. Бидејќи го имаме само бројот на неделата, што одговара на бројот на колоната, прво ќе го претвориме тој број во буква од колона, а потоа ќе ја конструираме референцата за опсег.
За погодност, ајде да го разложиме целиот процес во 3 чекори кои се лесни за следење.
- Конвертирајте број на колона во буква
Со бројот на колоната во H3, користете ја веќе познатата формула за да ја промените во азбучно знак:
=SUBSTITUTE(ADDRESS(1, H3, 4), "1", "")
Совет. Ако бројот во вашата база на податоци не се совпаѓа со бројот на колоната, не заборавајте да ја направите потребната корекција. На пример, ако имавме податоци за недела 1 во колона Б, податоци за недела 2 во колона В, итака натаму, тогаш ќе користиме H3+1 за да го добиеме точниот број на колона.
- Конструирајте низа што претставува референца за опсег
За да изградите референца за опсег во форма на низа, ја поврзувате буквата од колоната вратена со горната формула со првата и броевите на последните редови. Во нашиот случај, податочните ќелии се во редовите од 3 до 8, така што ја користиме оваа формула:
=SUBSTITUTE(ADDRESS(1, H3, 4), "1", "") & "3:" & SUBSTITUTE(ADDRESS(1, H3, 4), "1", "") & "8"
Имајќи предвид дека H3 содржи „3“, што се претвора во „C“, нашата формула е подложена на следнава трансформација:
="C"&"3:"&"C"&"8"
И ја произведува низата C3:C8.
- Make референца за динамичен опсег
За да трансформирате текстуална низа во валидна референца што може да ја разбере Excel, вгнездувајте ја горната формула во функцијата INDIRECT, а потоа префрлете ја на третиот аргумент на XLOOKUP:
=XLOOKUP(H2, E3:E8, INDIRECT(H4), "Not found")
За да се ослободите од дополнителната ќелија што ја содржи низата повратен опсег, можете да ја поставите формулата SUBSTITUTE ADDRESS во самата функција INDIRECT:
=XLOOKUP(H2, E3:E8, INDIRECT(SUBSTITUTE(ADDRESS(1, H3, 4), "1", "") & "3:" & SUBSTITUTE(ADDRESS(1, H3, 4), "1", "") & "8"), "Not found")
Исто така види: Како да се подели екранот во Excel вертикално и хоризонтално
Со нашата приспособена функција ColumnLetter, можете да добиете покомпактно и поелегантно решение:
=XLOOKUP(H2, E3:E8, INDIRECT(ColumnLetter(H3) & "3:" & ColumnLetter(H3) & "8"), "Not found")
Тоа е како да пронајдете буква од колона од број во Excel. Ви благодарам што прочитавте и со нетрпение очекувам да се видиме на нашиот блог следната недела!
Вежбајте работна книга за преземање
Excel колона од број до буква - примери (датотека .xlsm)