Kā konvertēt virkni uz skaitli programmā Excel VBA (3 metodes)

  • Dalīties Ar Šo
Hugh West

Šajā rakstā mēs aplūkosim vairākas metodes, kā Excel VBA programmā konvertēt virkni uz skaitli. Mēs redzēsim, kā izmantot iebūvētās funkcijas un izveidot pielāgotu funkciju, izmantojot tās, lai konvertētu virkni uz skaitli ar VBA koda piemēriem.

Lejupielādēt Practice Workbook

Lejupielādējiet šo prakses darba burtnīcu, lai vingrinātos, kamēr lasāt šo rakstu.

Konvertēt virknes uz Number.xlsm

3 veidi, kā pārvērst virkni par skaitli programmā Excel VBA

1. Veidot virkni uz skaitli, izmantojot tipa konvertēšanas funkcijas

Excel nodrošina vairākus iebūvētos tipa konversijas funkcijas . Mēs varam tos izmantot savā VBA kodā, lai viegli konvertētu virknes datu tipu uz dažādiem datu tipiem.

1.1 Virknes uz vesels skaitlis

Lai konvertētu virkne uz vesels skaitlis , mēs varam izmantot CInt funkcija mūsu kodā. CInt funkcija aizņem tikai viens arguments un tam vajadzētu būt skaitliskā vērtība . Izmēģināsim vizuālā koda redaktorā parādīt šādu kodu.

 Sub StringToNumber() MsgBox CInt(12.3) End Sub 

Preses F5 uz palaist . kods . Izvades rezultāti ir parādīti MsgBox .

Funkcija CInt pārveidots . ciparu virkne vērtība ("12.3" ) uz vesels skaitlis 12.

Lai vairāk uzzinātu par CInt funkcija , kodu redaktorā palaidiet šādu kodu un novērot . rezultāti .

 Sub StringToNumber() For i = 3 To 7 Cells(i, 3).Value = CInt(Cells(i, 2)) Next End Sub 

Portāls izejas ir šeit šādos Ekrānšāviņš .

Koda skaidrojums

Šajā kodā mēs izmantojām Par...Nākamā cilpa lai piemērotu CInt funkcija uz šūnu virknēm B3:B7. Portāls izejas tiek drukāti šūnās C3:C7. Mēs izmantojām Šūnu funkcija lai norādītu ievades vērtības un to, kur drukāt izejas vērtības.

Rezultāti

Funkcija CInt konvertēts 25,5 uz nākamais vesels skaitlis 26 . No otras puses, tas konvertēts 10.3 uz 10, nevis 11 Ja decimālskaitļa vērtība ir mazāka par 0,5, funkcija noapaļo uz leju līdz tādam pašam skaitlim. Bet funkcija decimālskaitlis skaitliskā virknes vērtība pārvēršas par nākamais vesels skaitlis numuru, ja tas ir vienāds ar vai lielāks par .5.

Piezīme

Veselo skaitļu vērtības diapazons ir no -32,768 uz 32,767 Ja mēs ievietosim skaitlisku vērtību, kas ir ārpus šī diapazona , Excel parādīs kļūda .

1.2 Virknes uz Long

Portāls CLng funkcija pārvērš skaitlisko virknes vērtību long datu tips . Tā darbojas līdzīgi kā funkcija CInt. Galvenā atšķirība ir tajā. diapazons kas atrodas starp -2,147,483,648 un 2,147,483,647.

 Turpmāk tekstā ir parādīts palaišanas kods:  Sub StringToNumber() For i = 3 To 9 Cells(i, 3).Value = CLng(Cells(i, 2)) Next End Sub 

Šeit šūnas B3:B9 satur dažus skaitliskā virknes vērtība , un pārveidots l skaitļi ir šūnās C3:C9. Portāls CLng funkcija pārveidots -32800 un 32800 sekmīgi uz garie skaitļi kas CInt funkcija nevarēja. Bet tas arī iegūt kļūda ja ievades skaitliskā vērtība ir ārpus diapazona.

1.3 Virknes uz decimālskaitli

Izmantojot CDec funkcija mēs varam konvertēt a skaitliskā virknes vērtība uz decimal datu tips. šādu kodu, lai konvertēt . skaitliskās vērtības šūnās B3:B7 uz decimal datu tips.

 Sub StringToNumber() For i = 3 To 7 Cells(i, 3).Value = CDec(Cells(i, 2)) Next End Sub 

1.4 Virkne uz Vienvietīga

Šajā piemērā mēs ieejas virknes pārveidosim par viens datu tips (viencipara skaitļi ar peldošo komatspunktu). Šim nolūkam mums ir jāizmanto CSng funkcija .

Viena datu veida diapazoni- (i) -3,402823E38 uz -1.401298E-45 vietnē negatīvs skaitļi.

(ii) 1.401298E-45 uz 3.402823E38 vietnē pozitīvs skaitļi.

Visual Basic redaktorā palaidiet šādu kodu.

 Sub StringToNumber() For i = 3 To 7 Cells(i, 3).Value = CSng(Cells(i, 2)) Next End Sub 

Izejas datos šūnas B3:B9 satur dažus skaitliskā virknes vērtība, un konvertēti viena datu veida skaitļi ir šūnās C3:C9. Bet tas saņems arī kļūda ja ievades skaitliskā vērtība ir ārpus diapazona.

1.5 Virkne uz Divvietīgs

Šajā piemērā mēs ieejas virknes pārveidosim par double datu tips (divkārši precīzi skaitļi ar peldošo komatspunktu). Šim nolūkam mums ir jāizmanto CDbl funkcija .

Dubultā datu tipu diapazoni- (i) -1,79769313486231E308 uz -4.94065645841247E-324 vietnē negatīvs skaitļi.

(ii) 4.94065645841247E-324 uz 1.79769313486232E308 vietnē pozitīvs skaitļi.

Visual Basic redaktorā palaidiet šādu kodu.

 Sub StringToNumber() For i = 3 To 7 Cells(i, 3).Value = CSng(Cells(i, 2)) Next End Sub 

Izejas datos šūnas B3:B9 satur dažus skaitliskā virknes vērtība un konvertētie dubultā datu tipa skaitļi ir šūnās C3:C9. Bet tas saņems arī kļūda ja ievades skaitliskā vērtība ir ārpus diapazona.

1.6 Virkne uz Valūta

Portāls valūtas datu tips ir ērts, ja aprēķini ir saistīti ar nauda Turklāt, ja vēlamies lielāku precizitāti fiksēts - punkts aprēķins , valūtas datu tipa izmantošana ir laba izvēle. Mums ir jāizmanto CCur funkcija lai pārvērstu virkni valūtas datu tips . Datu tips diapazoni no -922,337,203,685,477.5808 uz 922,337,203,685,477.5808.

Kods uz konvertēt skaitliskā virknes vērtība šūnu B3:B7 uz valūtas datu tips šūnās C3:C7 ir šeit zemāk.

 Sub StringToNumber() For i = 3 To 7 Cells(i, 3).Value = CCur(Cells(i, 2)) Next End Sub 

1.7 Virknes pārvēršana baitos

Portāls CByte funkcija pārvērš skaitliskās virknes vērtības baita datu tips kas svārstās no 0 līdz 255.

Kods ir šāds. :

 Sub StringToNumber() For i = 3 To 7 Cells(i, 3).Value = CByte(Cells(i, 2)) Next End Sub 

Izejas datos šūnas B3:B9 satur dažus skaitliskā virknes vērtība, un konvertētie baita datu tipa skaitļi ir šūnās C3:C9. Bet tas saņems arī kļūda ja ievades skaitliskā vērtība ir ārpus diapazona.

Lasīt vairāk: Kā konvertēt virkni uz garu, izmantojot VBA programmā Excel

Līdzīgi lasījumi

  • Virknes konvertēšana uz divkāršo Excel VBA (5 metodes)
  • Kā konvertēt tekstu uz skaitli, izmantojot Excel VBA (3 piemēri ar makrokomponentiem)
  • Kļūdas konversijas kļūdas novēršana programmā Excel (6 metodes)
  • Kā Excel programmā Excel konvertēt zinātnisko apzīmējumu uz skaitli (7 metodes)

2. Pielāgotas VBA funkcijas izmantošana, lai pārbaudītu un konvertētu virkni uz skaitli programmā Excel

Šajā attēlā mēs izveidosim pielāgota funkcija virkņu pārvēršanai skaitļos. Tad mēs varam izmantot šis pielāgota funkcija mūsu darba lapa iebūvētā funkcija . Šajā piemērā mēs izmantosim CInt funkcija uz konvertēt virknes uz veselie skaitļi vienlaikus radot pielāgota funkcija. Mēs varētu izmantot arī visus citas funkcijas aprakstīts metode 1 konvertēt virknes uz dažādi datu tipi . Tagad, lai to paveiktu, izpildiet tālāk norādītās darbības.

Soļi:

  • Šeit šūnās B3:B7, mums ir dažas skaitliskās virknes vērtības.

  • Tagad Visual Basic redaktorā, kopēt un ielīmēt šādu kodu un pēc tam nospiediet Ctrl + S uz saglabāt
 Funkcija StringToNumber(inputStr) Dim convertedNum As Variant If IsNumeric(inputStr) Then If IsEmpty(inputStr) Then convertedNum = "-" Else convertedNum = CInt(inputStr) End If Else convertedNum = "-" End If StringToNumber = convertedNum End Function 
  • Šūnā C3 , sākt rakstīt . funkcijas nosaukums ( StringToNumber ). Excel automātiski ieteikt . funkcija izmantot. Spiediet . Tabulas taustiņš lai ievadītu funkciju.

  • Ievietojiet šūnas atsauce B3 kā vienīgais arguments.

  • Tagad nospiediet Ievadiet pēc iekavju slēgšanas.

  • Atrodiet Uzpildes rokturis pie labajā apakšējā stūrī šūnu C3 uz pieteikties funkciju uz šūnām C4:C7.

  • Galīgais rezultāts ir vēlamie veselie skaitļi no virknes vērtībām.

3. VBA kods, lai Excel programmā Excel pārveidotu atlasīto šūnu diapazonu par skaitļiem

Šajā attēlā mēs konvertēsim diapazons no atlasītās šūnas kas satur virknes vērtības uz veseliem skaitļiem. Ja kādā šūnā ir neskaitliski vērtību, izejas rezultāts būs domuzīmes (-) līnija tā vietā . Sekojiet soļi :

  • Atlasiet šūnas B3: B6 ar ciparu virknes vērtības un B7 kurā ir neskaitliski

  • In the Visual Basic redaktors kopēt un ielīmēt šādus elementus. kods .
 Sub StringToNumber() Dim convertedNum As Variant For Each cell In Selection If IsNumeric(cell) Then If IsEmpty(cell) Then convertedNum = "-" Else convertedNum = CInt(cell) End If Else convertedNum = "-" End If With cell .Value = convertedNum.HorizontalAlignment = xlCenter End With Nākamā šūna End Sub 
  • Tagad nospiediet F5 uz palaist . izejas kā parādīts turpmāk. Ekrānšāviņš .

Piezīmes

  • Mēs izmantojām funkcija isNumeric in the 2. un 3. metodes mūsu VBA kodā, kas pārbauda, vai izteiksmi var pārvērst skaitlī.
  • In metode 1 , mēs izmantojām iebūvētās funkcijas (CInt, CDbl, CSng.....), lai konvertēt skaitliskās virknes vērtības uz skaitļi . Bet, ja ir vērtība, kas nav skaitlis , tas parādīs neatbilstības kļūda .

Secinājums

Tagad mēs zinām, kā Excel programmā pārvērst virknes vērtības skaitļos. Cerams, ka tas jūs mudinās pārliecinošāk izmantot šo funkcionalitāti. Ja rodas kādi jautājumi vai ieteikumi, neaizmirstiet tos ievietot komentāru lodziņā zemāk.

Hjū Vests ir ļoti pieredzējis Excel treneris un analītiķis ar vairāk nekā 10 gadu pieredzi šajā nozarē. Viņam ir bakalaura grāds grāmatvedībā un finansēs un maģistra grāds uzņēmējdarbības vadībā. Hjū aizraujas ar mācīšanu, un viņš ir izstrādājis unikālu mācīšanas pieeju, kas ir viegli izpildāma un saprotama. Viņa ekspertu zināšanas programmā Excel ir palīdzējušas tūkstošiem studentu un profesionāļu visā pasaulē uzlabot savas prasmes un izcelties karjerā. Izmantojot savu emuāru, Hjū dalās savās zināšanās ar pasauli, piedāvājot bezmaksas Excel apmācības un tiešsaistes apmācību, lai palīdzētu personām un uzņēmumiem pilnībā izmantot savu potenciālu.