Sisällysluettelo
Microsoft Excelissä numeroiden kanssa työskentely on tavallisinta. Joskus meidän on käsiteltävä tietokokonaisuuksia, joissa on suuria määriä numeroita. Saatat kuitenkin joutua tilanteeseen, jossa numerot näyttävät tekstiltä. Tästä syystä et voi lisätä, vähentää, jakaa, kertoa tai suorittaa minkäänlaisia operaatioita. Se näyttää aina virheen, kun yrität tehdä näin. Tässä opetusohjelmassa opetamme, miten muuntaatekstistä numeroksi Excelissä käyttämällä VBA koodit sopivin esimerkein ja asianmukaisin kuvin.
Lataa harjoituskirja
Lataa tämä harjoituskirja
Tekstin muuntaminen numeroiksi VBA:n avulla.xlsm
Tekstiksi muotoiltujen numeroiden tunnistaminen
Microsoft Excel on tarpeeksi älykäs ymmärtääkseen tekstin ja numeron välisen eron. Se muuntaa ne automaattisesti omiin muotoihinsa. Joskus se ei kuitenkaan pysty tekemään sitä, koska tietokokonaisuutta on käytetty väärin ja tulkittu väärin. Tästä syystä se pitää numerot tekstinä työkirjassasi.
Katso tätä tietosarjaa. Tässä sarakkeessa on joitakin numeroita.
Vaikka sarakkeessa on numeroita, ne on kohdistettu vasemmalle kuten teksti. Napsauta mitä tahansa solua, niin näet solun vieressä tämän laatikon.
Vie hiiren kursori laatikon päälle, minkä jälkeen näet tämän viestin.
Se osoittaa, että solu on muotoiltu tekstiksi. Näin voit olla varma, onko solut muotoiltu tekstiksi vai ei.
3 VBA-koodia tekstin muuntamiseksi numeroksi Excelissä
Vaikka voit helposti muuntaa tekstin numeroiksi manuaalisesti, tässä opetusohjelmassa käsitellään tekstin muuntamista numeroiksi VBA-koodien avulla. Suosittelemme, että opit ja sovellat kaikkia näitä menetelmiä tietokokonaisuuteesi. Varmasti niistä on hyötyä monissa tilanteissa.
1. VBA-koodi Range.NumberFormat-menetelmällä tekstin muuntamiseksi numeroksi Excelissä
Tämä menetelmä on melko yksinkertainen ja helppo käyttää mihin tahansa tietokokonaisuuteen. Sinun tarvitsee vain valita soluväli ja lisätä se kenttään VBA-koodi .
📌 Askeleet
1. Paina ensin ALT+F11 näppäimistöllä avataksesi VBA-editori .
2. Napsauta Lisää> Moduuli .
3. Kirjoita sitten seuraava koodi:
Sub ConvertTextToNumber() With Range("B5:B14") .NumberFormat = "General" .Value = .Value End With End Sub
4. Tallenna tiedosto.
5. Paina sitten ALT+F8 . Se avaa Makro valintaikkuna.
6. Valitse ConvertTextToNumber ja klikkaa Juokse.
Lopulta tämä koodi muuntaa tekstimme numeroiksi.
Lue lisää: Kuinka muuntaa merkkijono numeroksi Excel VBA: ssa
2. VBA-koodi, jossa on silmukka ja CSng tekstin muuntamiseksi numeroksi.
Tässä menetelmässä käytämme Silmukka ja CSng toiminnot. CSng funktio periaatteessa ottaa argumenttina minkä tahansa tekstin ja muuntaa sen yhdeksi numeroksi. Silmukassamme käymme läpi valitun sarakkeen jokaisen solun. Tämän jälkeen siirrämme jokaisen solun arvon funktioon CSng funktio muuntaa sen tekstistä numeroksi.
📌 Askeleet
1. Paina ensin ALT+F11 näppäimistöllä avataksesi VBA-editori .
2. Napsauta Lisää> Moduuli .
3. Kirjoita sitten seuraava koodi:
Sub ConvertUsingLoop() For Each r In Sheets("Loop&CSng").UsedRange.SpecialCells(xlCellTypeConstants) If IsNumeric(r) Then r.Value = CSng(r.Value) r.NumberFormat = "General" End If Next End Sub
4. Tallenna tiedosto.
5. Paina sitten ALT+F8 . Se avaa Makro valintaikkuna.
6. Valitse ConvertUsingLoop ja klikkaa Juokse.
Kuten näet, olemme muuttaneet tekstimme numeroiksi tämän VBA-koodin avulla.
Samanlaisia lukemia
- Massamuuntaminen tekstistä numeroksi Excelissä (6 tapaa)
- Kuinka muuntaa merkkijono pitkäksi VBA: n avulla Excelissä (3 tapaa)
- Muunna merkkijono kaksinkertaiseksi Excel VBA:ssa (5 menetelmää)
- Kuinka korjata Muunna numerovirheeksi Excelissä (6 menetelmää)
3. Tekstin muuntaminen numeroiksi Excelin dynaamisia alueita varten
Aiemmat menetelmät koskivat valittuja alueita, mikä tarkoittaa, että sinun on syötettävä solualueesi manuaalisesti koodiin. Joskus datasi voi kuitenkin olla suuri. Silloin sinun on muistettava solualueesi. Tämä menetelmä ratkaisee tämän ongelman. Tiedämme, että datasettimme alkaa kohdasta Solu B5 Mutta emme tiedä, mihin se saattaa päättyä.
Tunnistamme siis dynaamisesti viimeksi käytetyn Excel-rivin, jolla on tietoja, käyttämällä seuraavia keinoja Cells(Rows.Count, "B").End(xlUp).Row
Se palauttaa viimeisen ei-tyhjän rivin numeron, jonka yhdistämme " B5:B ".
📌 Askeleet
1. Paina ensin ALT+F11 näppäimistöllä avataksesi VBA-editori .
2. Napsauta Lisää > Moduuli .
3. Kirjoita sitten seuraava koodi:
Sub ConvertDynamicRanges() With Range("B5:B" & Cells(Rows.Count, "B").End(xlUp).Row) .NumberFormat = "General" .Value = .Value End With End Sub
4. Tallenna tiedosto.
5. Paina sitten ALT+F8 . Se avaa Makro valintaikkuna.
6. Valitse sitten ConvertDynamicRanges ja klikkaa Juokse.
Kuten näet, onnistumme muuntamaan tekstin numeroiksi VBA-koodien avulla.
💬 Muistettavaa
✎ Tässä käytämme tietokokonaisuutemme saraketta B. Jos tietosi ovat eri sarakkeessa, muuta VBA-koodien solualuetta vastaavasti.
✎ VBA-koodit toimivat vain aktiivisella arkilla.
Päätelmä
Lopuksi toivon, että tämä opetusohjelma on antanut sinulle hyödyllisen tiedon tekstin muuntamisesta numeroksi Excelissä VBA-koodien avulla. Suosittelemme, että opit ja sovellat kaikkia näitä ohjeita tietokokonaisuuteesi. Lataa harjoitustyökirja ja kokeile näitä itse. Voit myös vapaasti antaa palautetta kommenttiosassa. Arvokas palautteesi pitää meidät motivoituneina luomaan tällaisia opetusohjelmia.Älä unohda tarkistaa verkkosivujamme Exceldemy.com erilaisiin Exceliin liittyviin ongelmiin ja ratkaisuihin.