Äskettäisessä tehtävässä tein suodatuksen VBA: n kautta numerosarakkeessa. Mutta tuossa numerosarakkeessa oli numeroita tekstimuodossa. Kun suoritin VBA -komentosarjan, se ei tietenkään toiminut, koska suodatin oli numero ja sarakkeessa oli numeroita tekstinä. Siinä tapauksessa minun piti muuntaa teksti numeroiksi manuaalisesti ja tallentaa se. Sitten makro toimi täydellisesti. Mutta halusin muuntaa nämä tekstit numeroiksi VBA -komentosarjan avulla ja pystyin tekemään sen. Halusin jakaa tämän ikään kuin joku haluaisi tietää, miten tekstiarvot voidaan muuntaa lukuiksi VBA: n avulla, he voivat katsoa sitä.
Muunna teksti numeroksi käyttämällä Range.NumberFormat -menetelmää
Tämä ensimmäinen ja helpoin tapa. Pidän parempana tätä menetelmää kuin muita menetelmiä, koska se muuntaa valitun Excel -alueen suoraan lukumuotoon.
Joten jos sinulla on kiinteä alue, jonka haluat muuntaa tekstiksi, käytä tätä VBA -katkelmaa.
Sub ConvertTextToNumber () -alue ("A3: A8"). NumberFormat = "General" -alue ("A3: A8"). Value = Range ("A3: A8"). Arvo End Sub
Kun suoritat yllä olevan koodin, se muuntaa alueen A3: A8 tekstiksi tekstiksi.
Tämä koodi voi näyttää tyylikkäämmältä, jos kirjoitamme sen näin.
Sub ConvertTextToNumber () Alueella ("A3: A8") .NumberFormat = "General" .Value = .Arvo End End End
Kuinka se toimii?
No, se on melko yksinkertainen. Vaihdamme ensin alueen numeromuodon yleiseksi. Sitten laitamme kyseisen alueen arvon samaan alueeseen VBA: n avulla. Tämä poistaa tekstin muotoilun kokonaan. Yksinkertaista, eikö?
Muuta dynaamisen alueen muotoilumäärää
Yllä olevassa koodissa muutimme tekstin numeroksi kiinteän alueen yllä olevassa koodissa, mutta näin ei tapahdu suurimman osan ajasta. Jos haluat muuntaa tekstin useiksi dynaamisiksi alueiksi, voimme arvioida viimeksi käytetyn solun tai valita alueen dynaamisesti.
Tältä se näyttäisi:
Sub ConvertTextToNumber () Alueella ("A3: A" & solut (Rows.Count, 1) .End (xlUp) .Row) .NumberFormat = "General" .Value = .Arvo päättyy
Täällä tiedän, että alue alkaa A3: sta. Mutta en tiedä mihin se voi päättyä.
Joten tunnistan dynaamisesti viimeksi käytetyn Excel -rivin, jossa on dataa, käyttämällä VBA -katkelmasoluja (Rows.Count, 1) .End (xlUp) .Row. Se palauttaa viimeksi käytetyn rivinumeron, jonka yhdistämme "A3: A".
Huomautus: Tämä VBA -katkelma toimii aktiivisen työkirjan ja aktiivisen laskentataulukon kanssa. Jos koodisi vaihtaa useita arkkeja, olisi parempi asettaa aiotun laskentataulukon alueobjekti. Kuten tämä
Sub ConvertTextToNumber () Set Rng = ThisWorkbook.Sheets ("Sheet1"). Range ("A3: A" & Cells (Rows.Count, 1) .End (xlUp) .Row) With Rng .NumberFormat = "General" .Value = .Arvo päättyy loppuosaan
Yllä oleva koodi muuttaa tekstin aina työkirjan taulukon1 numeroksi, joka sisältää tämän koodin.
Loop ja CSng muuttaaksesi tekstin numeroksi
Toinen menetelmä on silmukka jokaisen solun läpi ja solun arvon muuttaminen numeroksi käyttämällä CSng -toimintoa. Tässä koodi.
Sub ConvertTextToNumberLoop () Set Rng = ThisWorkbook.Sheets ("Sheet1"). Range ("A3: A" & Cells (Rows.Count, 1). End (xlUp) .Row) Jokaiselle cel In Rng.Cells cel.Value = CSng (cel.Value) Seuraava cel End Sub
Yllä olevassa VBA -katkelmassa käytämme VBA For -silmukkaa iteroimaan alueen jokaisen solun yli ja muuntamaan jokaisen solun arvon numeroksi käyttämällä VBA: n CSng -funktiota.
Joten kyllä kaverit, tällä tavalla voit muuttaa tekstit numeroiksi Excelissä VBA: n avulla. Näiden katkelmien avulla voit valmistaa laskentataulukon ennen kuin teet niille mitään numerotoimintoja. Toivottavasti olin tarpeeksi selittävä. Voit ladata työtiedoston täältä.
Muuta teksti numeroksi VBA: n avulla.
Jos sinulla on epäilyksiä tästä tekstistä numeroon muuntamisesta tai muista Excel/VBA -aiheisiin liittyvistä kyselyistä, kysy alla olevasta kommenttiosasta.
Kuinka saada teksti ja numero käänteisenä VBA: n kautta Microsoft Excelissä | Numeron ja tekstin kääntämiseksi käytämme silmukoita ja keskitoimintoa VBA: ssa. 1234 muunnetaan 4321: ksi, "sinä" muunnetaan "uoy": ksi. Tässä katkelma.
Muotoile tiedot mukautetuilla numeromuodoilla VBA: n avulla Microsoft Excelissä | Jos haluat muuttaa tiettyjen Excel -sarakkeiden lukumuotoa, käytä tätä VBA -katkelmaa. Se peittää määritetyn numeromuodon tiettyyn muotoon yhdellä napsautuksella.
Suosittuja artikkeleita:
50 Excel -pikanäppäintä tuottavuuden lisäämiseksi | Nopeuta tehtävääsi. Nämä 50 pikanäppäintä tekevät työskentelystäsi entistä nopeampaa Excelissä.
VLOOKUP -toiminto Excelissä | Tämä on yksi eniten käytetyistä ja suosituimmista Excel -toiminnoista, jota käytetään arvon etsimiseen eri alueilta ja arkeilta.
COUNTIF Excel 2016: ssa | Laske arvot olosuhteilla käyttämällä tätä hämmästyttävää toimintoa. Sinun ei tarvitse suodattaa tietojasi tietyn arvon laskemiseksi. Laskutoiminto on välttämätön kojelaudan valmistelemiseksi.
SUMIF -toiminnon käyttäminen Excelissä | Tämä on toinen kojelaudan olennainen toiminto. Tämä auttaa sinua laskemaan yhteen arvot tietyissä olosuhteissa.