Kuidas konverteerida teksti numbriks Exceli VBA abil (3 näidet makroga)

  • Jaga Seda
Hugh West

Microsoft Excelis on töö numbritega kõige tavalisem. Mõnikord peame töötlema suure hulga numbritega andmestikku. Kuid võite sattuda olukorda, kus teie numbrid näevad välja nagu tekst. Sel põhjusel ei saa te lisada, lahutada, jagada, korrutada ega teha mingeid operatsioone. See näitab alati viga, kui te seda püüate teha. Selles õpetuses õpetame teile, kuidas teisendadatekstist numbriks Excelis, kasutades VBA koodid koos sobivate näidete ja nõuetekohaste illustratsioonidega.

Lae alla praktiline töövihik

Laadige alla see harjutusteemaline töövihik

Teksti teisendamine numbriteks VBA abil.xlsm

Kuidas tuvastada tekstina vormistatud numbreid

Microsoft Excel on piisavalt nutikas, et mõista teksti ja numbri erinevust. Ta teisendab need automaatselt vastavatesse vormingutesse. Kuid mõnikord ei saa ta seda teha, sest andmestikku on vääralt kasutatud ja valesti tõlgendatud. Sel põhjusel säilitab ta need numbrid teie töövihikus tekstidena.

Vaadake seda andmestikku. Siin on meil mõned numbrid ühes veerus.

Kuigi meil on veerus numbrid, on need kõik vasakule joondatud nagu tekst. Nüüd klõpsake ükskõik millisel lahtril. Selle lahtri kõrval on see kast.

Nüüd viige hiirekursor kasti kohale. Pärast seda näete seda teadet.

See näitab, et lahter on vormindatud tekstina. Nii saate olla kindel, kas lahtrid on vormindatud tekstina või mitte.

3 VBA-koodi teksti teisendamiseks Exceli numbriks

Kuigi teksti saab hõlpsasti teisendada numbriteks käsitsi, on selles õpetuses juttu teksti teisendamisest numbriteks VBA koodide abil. Soovitame teil õppida ja rakendada kõiki neid meetodeid oma andmekogumi suhtes. Kindlasti tuleb see paljudes olukordades kasuks.

1. VBA-kood koos Range.NumberFormat meetodiga teksti teisendamiseks arvuks Excelis

See meetod on üsna lihtne ja hõlpsasti kasutatav mis tahes andmekogumi puhul. Kõik, mida sa pead tegema, on rakkude vahemiku valimine ja selle sisestamine faili VBA kood .

📌 Sammud

1. Esmalt vajutage ALT+F11 klaviatuuril, et avada VBA toimetaja .

2. Klõpsake nuppu Insert> moodul .

3. Seejärel sisestage järgmine kood:

 Sub ConvertTextToNumber() With Range("B5:B14") .NumberFormat = "General" .Value = .Value End With End Sub 

4. Salvestage fail.

5. Seejärel vajutage ALT+F8 See avab Makro dialoogiaknas.

6. Valige ConvertTextToNumber ja klõpsake Jookseb.

Lõpuks teisendab see kood meie teksti numbriteks.

Loe edasi: Kuidas teisendada string Exceli VBA-s numbriks

2. VBA-kood koos silmuse ja CSng-ga teksti teisendamiseks numbriks

Selle meetodi puhul kasutame Loop ja CSng funktsioonid. CSng funktsioon võtab põhimõtteliselt argumendiks mis tahes teksti ja teisendab selle üheks numbriks. Meie tsükkel läbib iga valitud veeru iga lahtri. Pärast seda anname iga lahtri väärtuse üle funktsioonile CSng funktsioon, et teisendada see tekstist numbriks.

📌 Sammud

1. Esmalt vajutage ALT+F11 klaviatuuril, et avada VBA toimetaja .

2. Klõpsake nuppu Insert> moodul .

3. Seejärel sisestage järgmine kood:

 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. Salvestage fail.

5. Seejärel vajutage ALT+F8 See avab Makro dialoogiaknas.

6. Valige ConvertUsingLoop ja klõpsake Jookseb.

Nagu näete, oleme selle VBA-koodi abil meie teksti numbriteks konverteerinud.

Sarnased lugemised

  • Teksti hulgi konverteerimine Exceli numbriks (6 võimalust)
  • Kuidas konverteerida string pikaks, kasutades VBA-d Excelis (3 võimalust)
  • Stringi teisendamine Exceli VBAs kahekordseks (5 meetodit)
  • Kuidas parandada Exceli numbriks konverteerimise viga (6 meetodit)

3. Teksti teisendamine numbriteks dünaamiliste vahemike jaoks Excelis

Nüüd, eelmised meetodid olid valitud vahemike jaoks. See tähendab, et peate käsitsi sisestama koodis oma rakkude vahemiku. Kuid mõnikord võib teie andmestik olla suur. Sellistel juhtudel peate mäletama rakkude vahemikku. See meetod ületab selle probleemi. Me teame, et meie andmestik algab alates Raku B5 Aga me ei tea, kus see võib lõppeda.

Seega tuvastame dünaamiliselt viimati kasutatud Exceli rea, mis sisaldab andmeid, kasutades selleks Cells(Rows.Count, "B").End(xlUp).Row See tagastab viimase mitte-tühja rea numbri, mida me ühendame " B5:B ".

📌 Sammud

1. Esmalt vajutage ALT+F11 klaviatuuril, et avada VBA toimetaja .

2. Klõpsake nuppu Sisesta > Moodul .

3. Seejärel sisestage järgmine kood:

 Sub ConvertDynamicRanges() With Range("B5:B" & Cells(Rows.Count, "B").End(xlUp).Row) .NumberFormat = "General" .Value = .Value End With End Sub 

4. Salvestage fail.

5. Seejärel vajutage ALT+F8 See avab Makro dialoogiaknas.

6. Seejärel valige ConvertDynamicRanges ja klõpsake Jookseb.

Nagu näete, õnnestub meil VBA koodide abil tekst numbriteks teisendada.

💬 Asjad, mida meeles pidada

✎ Siin kasutame oma andmekogumi jaoks veergu B. Kui teie andmed on mõnes teises veerus, muutke VBA koodide lahtrite vahemikku vastavalt.

✎ VBA-koodid töötavad ainult aktiivsel lehel.

Kokkuvõte

Kokkuvõtteks loodan, et see õpetus andis teile tükikese kasulikke teadmisi teksti teisendamisest numbriks Excelis VBA koodide abil. Soovitame teil õppida ja rakendada kõiki neid juhiseid oma andmekogumile. Laadige alla praktiline töövihik ja proovige neid ise. Samuti võite vabalt anda tagasisidet kommentaaride sektsioonis. Teie väärtuslik tagasiside hoiab meid motiveerituna, et luua selliseid õpetusi.Ärge unustage meie veebilehte Exceldemy.com erinevate Exceliga seotud probleemide ja lahenduste kohta.

Hugh West on suurte kogemustega Exceli koolitaja ja analüütik, kellel on selles valdkonnas üle 10-aastane kogemus. Tal on raamatupidamise ja rahanduse bakalaureusekraad ning ärijuhtimise magistrikraad. Hugh’l on kirg õpetamise vastu ning ta on välja töötanud ainulaadse õpetamisviisi, mida on lihtne järgida ja mõista. Tema Exceli ekspertteadmised on aidanud tuhandetel õpilastel ja spetsialistidel üle maailma oma oskusi parandada ja karjääris silma paista. Oma ajaveebi kaudu jagab Hugh oma teadmisi maailmaga, pakkudes tasuta Exceli õpetusi ja veebikoolitusi, mis aitavad üksikisikutel ja ettevõtetel oma potentsiaali täielikult ära kasutada.