Како претворити стринг у број у Екцел ВБА (3 метода)

  • Деле Ово
Hugh West

У овом чланку ћемо разговарати о неколико метода за претварање стринга у број у Екцел ВБА. Видећемо како да користимо уграђене функције и да креирамо прилагођену функцију помоћу њих за претварање стринга у број са примерима ВБА кода.

Преузми радну свеску за вежбу

Преузмите ову радну свеску за вежбање док читате овај чланак.

Претворите стринг у број.клсм

3 начина за претварање стринга у број у програму Екцел ВБА

1. Конвертујте стринг у број користећи функције за конверзију типа

Екцел обезбеђује неколико уграђених функција конверзије типа . Можемо их користити у нашем ВБА коду да лако конвертујемо из стринг типа података у различите типове података.

1.1 Стринг у цео број

Да бисте претворили стринг у интегер , можемо користити ЦИнт функцију у нашем коду. ЦИнт функција узима само један аргумент и то би требало да буде нумеричка вредност . Покушајмо са следећим кодом у уређивачу визуелног кода.

1546

Притисните Ф5 да покренете код . Излаз је приказан у МсгБок .

Функција ЦИнт конвертовала је нумерички низ вредност (“12.3” ) у цео број 12.

Да бисте разумели више о ЦИнт функцији , покрените следеће код у уређивачу кода и посматрајте резултате .

8647

излаз је овде уследећи снимак екрана .

Објашњење кода

У овом коду смо користили За… Следећа петља за примену ЦИнт функције на низове ћелија Б3:Б7. излази се штампају у ћелијама Ц3:Ц7. Користили смо функцију Ћелије да одредимо улазне вредности и где да штампамо излазне вредности.

Резултати

Функција ЦИнт конвертује 25,5 у следећи цео број 26 . С друге стране, конвертује 10,3 у 10, а не 11 . Када је децимална нумеричка вредност мања од 0,5, функција заокружује на исти број. Али децимална нумеричка вредност низа претвара се у следећи цео број број ако је једнак или већи од .5.

Напомена

Цела вредност има опсег између -32,768 до 32,767 . Ако ставимо нумеричку вредност која је изван овог опсега , Екцел ће приказати грешку .

1.2 Стринг то Лонг

Функција ЦЛнг конвертује вредност нумеричког низа у лонг дататипе . Ради слично ЦИнт функцији. Кључна разлика лежи у његовом опсегу који је између -2,147,483,648 и 2,147,483,647.

The code to run is here below:8801

Овде ћелије Б3:Б9 садрже неку нумеричку вредност низа , а конвертовани л лонг бројеви су у ћелијама Ц3:Ц9. ЦЛнг функција конвертује -32800 и 32800 успешно у дуге бројеве што ЦИнт функција није могла. Али такође ће добити грешку ако је улазна нумеричка вредност изван опсега.

1.3 Стринг у децимал

Користећи ЦДец функцију можемо конвертовати а нумеричка вредност низа до децимални тип података. Покрените следећи код да конвертујете нумеричке вредности у ћелијама Б3:Б7 у децимални тип података.

2851

1.4 Стринг то Сингле

У овом примеру, претворићемо улазне низове у сингле дататипе (сингле -прецизни бројеви са помичним зарезом. За ово треба да користимо ЦСнг функцију .

Појединачни тип података се креће од- (и)  -3,402823Е38 до -1,

3372
98Е-45 за негативне бројеве.

(ии) 1.

3372
98Е-45 4 3. позитивни бројеви.

Покрените следећи код у визуелном основном уређивачу.

8409

У излазу, ћелије Б3:Б9 садрже неку нумеричку вредност низа, и конвертовани појединачни типови података су у ћелијама Ц3:Ц9. Али такође ће добити грешку ако је улазна нумеричка вредност ван опсега.

1.5 Стринг то Доубле

У овом примеру, претворићемо улазне стрингове у доубле дататипе (плутајуће са двоструком прецизношћу -тачка) бројеви. За ово нам требада користите ЦДбл функцију .

Двоструки тип података у опсегу- (и) -1,79769313486231Е308 до -4,94065645841247Е-324 за негативни бројеви.

(ии) 4.94065645841247Е-324 од 4.94065645841247Е-324 за 4.94065645841247Е-324 од 324 <и3>1 од 8 од 3 до 4>1 од 8 од 8 од 12 од 32>1 од 10 од 30>1>. .

Покрените следећи код у визуелном основном уређивачу.

2627

У излазу ћелије Б3:Б9 садрже неке нумеричка вредност стринга и конвертовани бројеви двоструког типа података су у ћелијама Ц3:Ц9. Али ће такође добити грешку ако је унос нумеричка вредност је ван опсега.

1.6 Стринг то Цурренци

Тип података цурренци је згодан када се прорачуни односе на новац . Штавише, ако желимо више тачности у фиксном тачком калкулацији , употреба типа података валуте је добар избор. Морамо да користимо ЦЦур функцију да конвертујемо стринг у тип података валуте . Тип података у распону од -922,337,203,685,477,5808 до 922,337,203,685,477,5808.

Код у цонверт нумериц стринг валуе 4> ћелија Б3:Б7 до тип података валуте у ћелијама Ц3:Ц7 је овде испод.

5197

1.7 стринг у бајт

Функција ЦБите конвертује нумеричке вредности низа у бајт тип података који се креће од 0 до 255.

Код је каоследи :

3046

У излазу, ћелије Б3:Б9 садрже неку нумеричку вредност стринга, и бројеве типа података конвертованих бајтова су у ћелијама Ц3:Ц9. Али такође ће добити грешку ако ​​је улазна нумеричка вредност ван опсега.

Прочитајте више: Како претворити стринг у дуг користећи ВБА у програму Екцел

Слична очитања

  • Претворити стринг у дупли у Екцел ВБА (5 метода)
  • Како претворити текст у број помоћу Екцел ВБА (3 примера са макроима)
  • Поправити грешку при конверзији у број у Екцел-у (6 метода)
  • Како претворити научну нотацију у број у Екцел-у (7 метода)

2. Употреба прилагођене ВБА функције за проверу и претварање стринга у број у Екцел-у

У овој илустрацији направићемо прилагођену функцију за претварање низове до бројева. Затим можемо користити ову прилагођену функцију у нашем радном листу као уграђену функцију . У овом примеру, користићемо ЦИнт функцију да конвертујемо стрингове у целе бројеве док креирамо прилагођену функцију. Такође бисмо могли да користимо све друге функције описане у методу 1 да претворимо стрингове у различите типове података . Сада пратите доле наведене кораке да бисте ово постигли.

Кораци:

  • Овде, у ћелијама Б3:Б7, имамо неке нумерички низвредности.

  • Сада, у основном визуелном уређивачу, копирајте и налепите следећи код и затим  притисните Цтрл + С да сачувате
6120
  • У ћелији Ц3 , почните да куцате име функције ( СтрингТоНумбер ). Екцел ће аутоматски предложити функцију да се користи. Притисните тастер Таб да бисте ушли у функцију.

  • Поставите референцу ћелије Б3 као једини аргумент.

  • Сада притисните Ентер након затварања заграда.

  • Пронађите ручицу за попуњавање у десном доњем углу ћелије Ц3 да бисте применили функција за ћелије Ц4:Ц7.

  • Коначни излаз су жељени цели бројеви из вредности низа .

3. ВБА код за претварање изабраног опсега ћелија у бројеве у Екцел-у

У овој илустрацији ћемо конвертовати опсег од одабраних ћелија садрже вредности низа целих бројева. Ако било која ћелија садржи ненумеричку вредност у себи, излаз ће бити цртица (-) линија уместо . Пратите кораке :

  • Изаберите ћелије Б3:Б6 које имају нумеричке низове вредности и Б7 које садрже ненумерички

  • У Висуал Басиц Едитор-у копију и налепите следеће цоде .
3372
  • Сада притисните Ф5 да покренете излаз као што је приказано на следећи снимак екрана .

Напомене

  • Користили смо јеНумеричка функција у 2. и 3. методу у нашем ВБА коду која проверава да ли се израз може конвертовати у број.
  • Ин метод 1 , користили смо уграђене функције (ЦИнт, ЦДбл, ЦСнг…..) да конвертујемо вредности нумеричког низа у бројеве . Али ако постоји ненумеричка вредност , приказаће грешку неподударања .

Закључак

Сада знамо како да конвертујемо вредности стрингова у бројеве у Екцел-у. Надамо се да би вас то подстакло да ову функцију користите са више самопоуздања. Било каква питања или сугестије не заборавите да их ставите у поље за коментаре испод.

Хју Вест је веома искусан Екцел тренер и аналитичар са више од 10 година искуства у индустрији. Дипломирао је рачуноводство и финансије и магистрирао пословну администрацију. Хју има страст према подучавању и развио је јединствен приступ подучавању који је лако пратити и разумети. Његово стручно знање о Екцел-у помогло је хиљадама студената и професионалаца широм света да унапреде своје вештине и постану успешни у каријери. Кроз свој блог, Хју дели своје знање са светом, нудећи бесплатне Екцел туторијале и онлајн обуку како би помогли појединцима и предузећима да остваре свој пуни потенцијал.