Turinys
Šioje pamokoje apžvelgsime, kaip pakeisti "Excel" stulpelių numerius į atitinkamus abėcėlės simbolius.
Sudarant sudėtingas formules "Excel" programoje, kartais gali prireikti gauti tam tikros ląstelės stulpelio raidę arba iš tam tikro skaičiaus. Tai galima padaryti dviem būdais: naudojant integruotas funkcijas arba pasirinktinę funkciją.
Kaip konvertuoti stulpelio numerį į abėcėlę (vienos raidės stulpeliai)
Jei stulpelio pavadinimą sudaro viena raidė nuo A iki Z, jį galite gauti naudodami šią paprastą formulę:
CHAR(64 + col_number )Pavyzdžiui, norint konvertuoti skaičių 10 į stulpelio raidę, formulė yra tokia:
=CHAR(64 + 10)
Taip pat galima įvesti skaičių į kurią nors ląstelę ir formulėje pateikti nuorodą į tą ląstelę:
=CHAR(64 + A2)
Kaip veikia ši formulė:
Funkcija CHAR grąžina simbolį pagal ASCII rinkinio simbolio kodą. Angliškos abėcėlės didžiųjų raidžių ASCII reikšmės yra nuo 65 (A) iki 90 (Z). Taigi, norėdami gauti didžiosios raidės A simbolio kodą, prie 64 pridėkite 1; norėdami gauti didžiosios raidės B simbolio kodą, prie 64 pridėkite 2 ir t. t.
Kaip konvertuoti "Excel" stulpelio numerį į raidę (bet kurį stulpelį)
Jei ieškote universalios formulės, kuri veiktų bet kuriame "Excel" stulpelyje (1 raidės, 2 raidės ir 3 raidės), reikės naudoti šiek tiek sudėtingesnę sintaksę:
SUBSTITUTE(ADRESAS(1, col_number , 4), "1", "")Kai stulpelio raidė yra A2, formulė yra tokios formos:
=SUBSTITUTE(ADDRESS(1, A2, 4), "1", "")
Kaip veikia ši formulė:
Pirmiausia sukonstruokite ląstelės adresą su dominančio stulpelio numeriu. Tam funkcijai ADDRESS pateikite šiuos argumentus:
- 1 už eilutės_num (eilučių numeris nėra svarbus, todėl galite naudoti bet kurį).
- A2 (ląstelė, kurioje yra stulpelio numeris), nes column_num .
- 4 už abs_num argumentą, kad būtų grąžinta santykinė nuoroda.
Naudojant pirmiau nurodytus parametrus, funkcija ADDRESS kaip rezultatą grąžina teksto eilutę "A1".
Kadangi mums reikia tik stulpelio raidės, eilutės numerį pašaliname naudodami funkciją SUBSTITUTE, kuri ieško "1" (arba bet kokio eilutės numerio, kurį užkodavote ADDRESS funkcijoje) tekste "A1" ir pakeičia jį tuščia eilute ("").
Gauti stulpelio raidę iš stulpelio numerio naudojant pasirinktinę funkciją Pasirinktinė funkcija
Jei reikia reguliariai konvertuoti stulpelių numerius į abėcėlės simbolius, pasirinktinė naudotojo apibrėžta funkcija (UDF) gali labai sutaupyti laiko.
Funkcijos kodas yra gana paprastas ir nesudėtingas:
Viešoji funkcija ColumnLetter(col_num) ColumnLetter = Split(Cells(1, col_num).Address, "$" )(1) End FunctionČia mes naudojame Ląstelės savybė, kad būtų nuoroda į 1 eilutės ląstelę ir nurodytą stulpelio numerį, ir Adresas savybė grąžinti eilutę su absoliučia nuoroda į tą langelį (pvz., $A$1). Tada funkcija Split suskaido grąžintą eilutę į atskirus elementus, kaip skirtuką naudodama ženklą $, ir mes grąžiname elementą (1), kuris yra stulpelio raidė.
Įklijuokite kodą į VBA redaktorių, ir jūsų naujasis ColumnLetter funkcija yra paruošta naudoti. Išsamesnių nurodymų rasite: Kaip įterpti VBA kodą į "Excel".
Galutinio vartotojo požiūriu, funkcijos sintaksė yra tokia paprasta:
ColumnLetter(col_num)Kur col_num yra stulpelio numeris, kurį norite paversti raide.
Jūsų tikroji formulė gali atrodyti taip:
=Skolonėlio raidė(A2)
Ji grąžins lygiai tokius pačius rezultatus, kaip ir ankstesniame pavyzdyje aptartos "Excel" funkcijos:
Kaip gauti tam tikros ląstelės stulpelio raidę
Norėdami nustatyti konkrečios ląstelės stulpelio raidę, naudokite funkciją COLUMN, kad gautumėte stulpelio numerį, ir pateikite šį numerį funkcijai ADDRESS. Visa formulė bus tokios formos:
SUBSTITUTE(ADRESAS(1, STULPELIS( cell_address ), 4), "1", "")Pavyzdžiui, raskime ląstelės C5 stulpelio raidę:
=SUBSTITUTE(ADDRESS(1, COLUMN(C5), 4), "1", "")
Akivaizdu, kad rezultatas yra "C" :)
Kaip gauti dabartinės ląstelės stulpelio raidę
Norint nustatyti esamos ląstelės raidę, formulė yra beveik tokia pati, kaip ir pirmiau pateiktame pavyzdyje. Vienintelis skirtumas yra tas, kad funkcija COLUMN() naudojama su tuščiu argumentu, nurodančiu į ląstelę, kurioje yra formulė:
=SUBSTITUTE(ADRESAS(1, STULPELIS(), 4), "1", "")
Kaip sukurti dinaminio diapazono nuorodą iš stulpelio numerio
Tikimės, kad ankstesni pavyzdžiai suteikė jums naujų minčių, tačiau jums gali kilti klausimų dėl praktinio pritaikymo.
Šiame pavyzdyje parodysime, kaip formulę "stulpelio numeris - raidė" naudoti sprendžiant realias užduotis. Visų pirma sukursime dinaminę XLOOKUP formulę, kuri iš konkretaus stulpelio ištrauks reikšmes pagal jo numerį.
Tarkime, kad iš toliau pateiktos pavyzdinės lentelės norite gauti tam tikro projekto (H2) ir savaitės (H3) pelną.
Norėdami atlikti užduotį, turite pateikti XLOOKUP diapazoną, iš kurio turi būti grąžinamos reikšmės. Kadangi turime tik savaitės numerį, kuris atitinka stulpelio numerį, pirmiausia šį skaičių konvertuosime į stulpelio raidę, o tada sukursime diapazono nuorodą.
Kad būtų patogiau, suskirstykime visą procesą į 3 nesudėtingus žingsnius.
- Konvertuoti stulpelio numerį į raidę
Naudodamiesi jau pažįstama formule pakeiskite H3 stulpelio numerį į abėcėlės simbolį:
Taip pat žr: "Excel" COUNTIF ir COUNTIFS su OR logika=SUBSTITUTE(ADDRESS(1, H3, 4), "1", "")
Patarimas. Jei duomenų rinkinio numeris neatitinka stulpelio numerio, būtinai atlikite reikiamą pataisymą. Pavyzdžiui, jei 1 savaitės duomenys būtų B stulpelyje, 2 savaitės duomenys - C stulpelyje ir t. t., tuomet, norėdami gauti teisingą stulpelio numerį, turėtume naudoti H3+1.
- Sukonstruokite eilutę, vaizduojančią diapazono nuorodą
Norėdami sukurti eilutės pavidalo diapazono nuorodą, pirmiau pateiktos formulės grąžinamą stulpelio raidę sutraukite su pirmos ir paskutinės eilutės numeriais. Mūsų atveju duomenų ląstelės yra nuo 3 iki 8 eilutės, todėl naudojame šią formulę:
=SUBSTITUTE(ADDRESS(1, H3, 4), "1", "") & "3:" & SUBSTITUTE(ADDRESS(1, H3, 4), "1", "") & "8"
Atsižvelgiant į tai, kad H3 sudėtyje yra "3", kuris paverčiamas "C", mūsų formulė transformuojama taip:
="C"&"3:"&"C"&"8"
Ir sukuria eilutę C3:C8.
- Atlikite dinaminio diapazono atskaitą
Norėdami paversti teksto eilutę galiojančia nuoroda, kurią "Excel" supranta, pirmiau pateiktą formulę įterpkite į funkciją INDIRECT ir perduokite ją trečiajam XLOOKUP argumentui:
=XLOOKUP(H2, E3:E8, INDIRECT(H4), "Nerastas")
Norėdami atsikratyti papildomo langelio, kuriame yra grąžinamo diapazono eilutė, formulę SUBSTITUTE ADDRESS galite patalpinti pačioje INDIRECT funkcijoje:
=XLOOKUP(H2, E3:E8, INDIRECT(SUBSTITUTE(ADDRESS(1, H3, 4), "1", "") & "3:" & SUBSTITUTE(ADDRESS(1, H3, 4), "1", "") & "8"), "Nerastas")
Naudodami mūsų pasirinktinę funkciją ColumnLetter galite gauti kompaktiškesnį ir elegantiškesnį sprendimą:
=XLOOKUP(H2, E3:E8, INDIRECT(ColumnLetter(H3) & "3:" & ColumnLetter(H3) & "8"), "Nerastas")
Štai kaip "Excel" programoje rasti stulpelio raidę iš skaičiaus. Dėkoju, kad perskaitėte, ir laukiu jūsų mūsų tinklaraštyje kitą savaitę!
Atsisiųsti praktikos sąsiuvinį
"Excel" stulpelio numerio keitimas į raidę - pavyzdžiai (.xlsm failas)