ວິທີການແປງ String ເປັນຕົວເລກໃນ Excel VBA (3 ວິທີການ)

  • ແບ່ງປັນນີ້
Hugh West

ໃນ​ບົດ​ຄວາມ​ນີ້, ພວກ​ເຮົາ​ຈະ​ປຶກ​ສາ​ຫາ​ລື​ວິ​ທີ​ການ​ຈໍາ​ນວນ​ຫນຶ່ງ​ເພື່ອ​ປ່ຽນ​ສະ​ຕ​ຣິ​ງ​ເປັນ​ຕົວ​ເລກ​ໃນ Excel VBA. ພວກເຮົາຈະເບິ່ງວິທີການໃຊ້ຟັງຊັນໃນຕົວ ແລະສ້າງຟັງຊັນແບບກຳນົດເອງໂດຍໃຊ້ພວກມັນເພື່ອປ່ຽນສະຕຣິງເປັນຕົວເລກດ້ວຍຕົວຢ່າງລະຫັດ VBA.

ດາວໂຫລດປື້ມຄູ່ມືການປະຕິບັດ

ດາວໂຫລດປື້ມຄູ່ມືການຝຶກຫັດນີ້ເພື່ອອອກກໍາລັງກາຍໃນຂະນະທີ່ທ່ານກໍາລັງອ່ານບົດຄວາມນີ້.

ແປງ String ເປັນ Number.xlsm

3 ວິທີແປງ String ເປັນຕົວເລກ ໃນ Excel VBA

1. ປ່ຽນສະຕຣິງເປັນຕົວເລກໂດຍໃຊ້ຟັງຊັນການແປງປະເພດ

Excel ໃຫ້ບໍລິການໃນຕົວ ການແປງປະເພດ . ພວກເຮົາສາມາດໃຊ້ພວກມັນໃນລະຫັດ VBA ຂອງພວກເຮົາເພື່ອປ່ຽນຈາກ String datatype ໄປເປັນ datatypes ຕ່າງໆໄດ້ຢ່າງງ່າຍດາຍ. ຈຳນວນເຕັມ , ພວກເຮົາສາມາດໃຊ້ ຟັງຊັນ CInt ໃນລະຫັດຂອງພວກເຮົາ. ຟັງຊັນ CInt ໃຊ້ພຽງແຕ່ ໜຶ່ງ argument ແລະນັ້ນຄວນຈະເປັນ ຄ່າຕົວເລກ . ມາລອງລະຫັດຕໍ່ໄປນີ້ໃນ Visual Code Editor.

5096

ກົດ F5 ເພື່ອ ແລ່ນ the ລະຫັດ . ຜົນໄດ້ຮັບແມ່ນສະແດງຢູ່ໃນ MsgBox .

ຟັງຊັນ CInt ປ່ຽນ ເປັນ ສະຕຣິງຕົວເລກ ຄ່າ (“12.3” ) ໄປຫາ ຈຳນວນເຕັມ 12.

ເພື່ອເຂົ້າໃຈເພີ່ມເຕີມກ່ຽວກັບຟັງຊັນ CInt , ໃຫ້ດໍາເນີນການຕໍ່ໄປນີ້ ລະຫັດໃນຕົວແກ້ໄຂລະຫັດ ແລະ ສັງເກດ ໄດ້ ຜົນໄດ້ຮັບ .

6127

The output ແມ່ນຢູ່ໃນຕໍ່ໄປນີ້ ພາບໜ້າຈໍ .

ຄຳອະທິບາຍລະຫັດ

ໃນລະຫັດນີ້, ພວກເຮົາໄດ້ໃຊ້ ສຳລັບ... ຖັດໄປ ເພື່ອນຳໃຊ້ ຟັງຊັນ CInt ເທິງສະຕຣິງຂອງເຊລ B3:B7. The outputs ຖືກພິມອອກໃນຕາລາງ C3:C7. ພວກເຮົາໄດ້ໃຊ້ ຟັງຊັນ Cells ເພື່ອລະບຸຄ່າການປ້ອນຂໍ້ມູນ ແລະບ່ອນທີ່ຈະພິມຄ່າທີ່ອອກມາ.

ຜົນໄດ້ຮັບ

ຟັງຊັນ CInt ປ່ຽນ 25.5 ເປັນ ຈຳນວນເຕັມຕໍ່ໄປ 26 . ໃນທາງກົງກັນຂ້າມ, ມັນ ປ່ຽນ 10.3 ເປັນ 10, ບໍ່ແມ່ນ 11 . ເມື່ອຄ່າຕົວເລກທົດສະນິຍົມໜ້ອຍກວ່າ .5, ຟັງຊັນຈະປັດລົງເປັນຕົວເລກດຽວກັນ. ແຕ່ ເລກທົດສະນິຍົມ ຄ່າສະຕຣິງຕົວເລກຈະປ່ຽນເປັນ ຈຳນວນຖັດໄປ ຕົວເລກຖ້າມັນ ເທົ່າກັບ ຫຼື ໃຫຍ່ກວ່າ .5.

ໝາຍເຫດ

ຄ່າຈຳນວນເຕັມມີໄລຍະລະຫວ່າງ -32,768 ຫາ 32,767 . ຖ້າ​ພວກ​ເຮົາ​ເອົາ​ຄ່າ​ຕົວ​ເລກ​ທີ່ ອອກ​ຈາກ​ຂອບ​ເຂດ​ນີ້ , Excel ຈະ​ສະ​ແດງ​ໃຫ້​ເຫັນ error .

1.2 String ເປັນ Long

The ຟັງຊັນ CLng ປ່ຽນຄ່າສະຕຣິງຕົວເລກເປັນ ປະເພດຂໍ້ມູນຍາວ . ມັນເຮັດວຽກຄ້າຍຄືກັນກັບຟັງຊັນ CInt. ຄວາມແຕກຕ່າງທີ່ສຳຄັນແມ່ນຢູ່ໃນ ໄລຍະ ຂອງມັນເຊິ່ງຢູ່ລະຫວ່າງ -2,147,483,648 ແລະ 2,147,483,647.

The code to run is here below:3417

ຢູ່ນີ້, ເຊລ B3:B9 ມີບາງ ຄ່າສະຕຣິງຕົວເລກ , ແລະ ປ່ຽນ l ຕົວເລກອັນ ຢູ່ໃນເຊລ C3:C9. ຟັງຊັນ CLng ປ່ຽນ -32800 ແລະ 32800 ສຳເລັດເປັນ ຕົວເລກຍາວ ທີ່ ຟັງຊັນ CInt ເຮັດບໍ່ໄດ້. ແຕ່​ມັນ​ຍັງ​ຈະ​ໄດ້​ຮັບ ຄວາມ​ຜິດ​ພາດ ຖ້າ​ຫາກ​ວ່າ​ການ​ປ້ອນ​ຂໍ້​ມູນ ຄ່າ​ຕົວ​ເລກ ແມ່ນ ນອກ​ໄລ​ຍະ.

1.3 String to Decimal

ການໃຊ້ຟັງຊັນ CDec ພວກເຮົາສາມາດ ປ່ຽນ a ຄ່າສະຕຣິງຕົວເລກ ເປັນ ປະເພດຂໍ້ມູນເລກທົດສະນິຍົມ. ແລ່ນ ລະຫັດຕໍ່ໄປນີ້ເພື່ອ ປ່ຽນ ໄດ້ ຄ່າຕົວເລກ ໃນຕາລາງ B3:B7 ເປັນ ປະເພດຂໍ້ມູນເລກທົດສະນິຍົມ.

7311

1.4 String to Single

ໃນຕົວຢ່າງນີ້, ພວກເຮົາຈະປ່ຽນສະຕຣິງປ້ອນເຂົ້າເປັນ ປະເພດຂໍ້ມູນດຽວ (ດ່ຽວ -precision floating-point) ຕົວເລກ. ສໍາລັບອັນນີ້, ພວກເຮົາຈໍາເປັນຕ້ອງໃຊ້ ຟັງຊັນ CSng .

ປະເພດຂໍ້ມູນດຽວ ranges- (i)  -3.402823E38 ຫາ -1.401298E-45 ສຳລັບ ລົບ ຕົວເລກ.

(ii) 1.401298E-45 ເຖິງ 3.402823E38 ສຳລັບ ບວກ ຕົວເລກ.

ແລ່ນລະຫັດຕໍ່ໄປນີ້ໃນຕົວແກ້ໄຂພື້ນຖານພາບ.

3329

ໃນຜົນຜະລິດ, ເຊລ B3:B9 ມີບາງ ຄ່າສະຕຣິງຕົວເລກ, ແລະ ຕົວເລກປະເພດຂໍ້ມູນດ່ຽວທີ່ປ່ຽນແລ້ວ ຢູ່ໃນເຊລ C3:C9. ແຕ່ມັນຍັງຈະໄດ້ຮັບ ຂໍ້ຜິດພາດ ຖ້າການປ້ອນ ຄ່າຕົວເລກ ແມ່ນ ນອກຂອບເຂດ.

1.5 String to double

ໃນຕົວຢ່າງນີ້, ພວກເຮົາຈະປ່ຽນສາຍ input ໃຫ້ເປັນ double datatype (double-precision floating -point) ຕົວເລກ. ສໍາລັບການນີ້, ພວກເຮົາຕ້ອງການເພື່ອໃຊ້ຟັງຊັນ CDbl .

ໄລຍະປະເພດຂໍ້ມູນຄູ່ - (i) -1.79769313486231E308 ຫາ -4.94065645841247E-324 ສຳລັບ ລົບ ຕົວເລກ.

4.94065645841247E-324 ຫາ 1.797693134862 48> .

ແລ່ນລະຫັດຕໍ່ໄປນີ້ໃນຕົວແກ້ໄຂພື້ນຖານພາບ.

7085

ໃນຜົນໄດ້ຮັບ, ຕາລາງ B3:B9 ມີບາງອັນ ຄ່າສະຕຣິງຕົວເລກ ແລະ ຕົວເລກປະເພດຂໍ້ມູນຄູ່ທີ່ປ່ຽນແລ້ວ ຢູ່ໃນເຊລ C3:C9. ແຕ່ມັນຍັງຈະໄດ້ຮັບ ຂໍ້ຜິດພາດ ຖ້າການປ້ອນຂໍ້ມູນ ຄ່າຕົວເລກ ແມ່ນ ນອກຂອບເຂດ.

1.6 String to Currency

The currency data type ແມ່ນມີປະໂຫຍດເມື່ອການຄຳນວນກ່ຽວຂ້ອງກັບ ເງິນ . ຍິ່ງໄປກວ່ານັ້ນ, ຖ້າພວກເຮົາຕ້ອງການຄວາມຖືກຕ້ອງຫຼາຍຂຶ້ນໃນ ຄົງທີ່ ຈຸດ ການຄິດໄລ່ , ການນໍາໃຊ້ປະເພດຂໍ້ມູນສະກຸນເງິນເປັນທາງເລືອກທີ່ດີ. ພວກເຮົາຈໍາເປັນຕ້ອງໃຊ້ ຟັງຊັນ CCur ເພື່ອປ່ຽນສະຕຣິງເປັນ ປະເພດຂໍ້ມູນສະກຸນເງິນ . ປະເພດຂໍ້ມູນ ໄລຍະ ຈາກ -922,337,203,685,477.5808 ເຖິງ 922,337,203,685,477.5808.

ລະຫັດເປັນ ປ່ຽນ ຄ່າຕົວເລກ 4> ຂອງເຊລ B3:B7 ຫາ ປະເພດຂໍ້ມູນສະກຸນເງິນ ໃນຕາລາງ C3:C7 ຢູ່ລຸ່ມນີ້.

4809

<1

1.7 String to Byte

The CByte function converts numerical string value to the byte data type which ranges from 0 ຫາ 255.

ລະຫັດ ແມ່ນເປັນຕໍ່ໄປນີ້ :

9070

ໃນຜົນຜະລິດ, ຕາລາງ B3:B9 ມີບາງ ຄ່າສະຕຣິງຕົວເລກ, ແລະ ຕົວເລກປະເພດຂໍ້ມູນໄບຕ໌ທີ່ຖືກແປງ ຢູ່ໃນເຊລ C3:C9. ແຕ່ມັນຍັງຈະໄດ້ຮັບ ຂໍ້ຜິດພາດ ຖ້າການປ້ອນຂໍ້ມູນ ຄ່າຕົວເລກ ແມ່ນ ນອກໄລຍະ.

ອ່ານເພີ່ມເຕີມ: ວິທີການແປງ String ເປັນຍາວໂດຍໃຊ້ VBA ໃນ Excel

ການອ່ານທີ່ຄ້າຍຄືກັນ

  • ປ່ຽນ String ເປັນສອງເທົ່າໃນ Excel VBA (5 ວິທີ)
  • ວິ​ທີ​ການ​ແປງ​ຂໍ້​ຄວາມ​ເປັນ​ຕົວ​ເລກ​ດ້ວຍ Excel VBA (3 ຕົວ​ຢ່າງ​ທີ່​ມີ Macros​)
  • ແກ້​ໄຂ​ການ​ປ່ຽນ​ເປັນ​ຕົວ​ເລກ​ຜິດ​ພາດ​ໃນ Excel (6 ວິ​ທີ​ການ​)
  • ວິທີປ່ຽນ Notation ວິທະຍາສາດເປັນຕົວເລກໃນ Excel (7 ວິທີ)

2. ໃຊ້ຟັງຊັນ VBA ແບບກຳນົດເອງເພື່ອກວດສອບ ແລະປ່ຽນສະຕຣິງເປັນຕົວເລກໃນ Excel

ໃນຕົວຢ່າງນີ້, ພວກເຮົາຈະສ້າງ ຟັງຊັນກຳນົດເອງ ສຳລັບການແປງ. ຊ່ອຍແນ່ໃສ່ຕົວເລກ. ຈາກ​ນັ້ນ​ພວກ​ເຮົາ​ສາ​ມາດ ໃຊ້ ນີ້ ຟັງ​ຊັນ​ທີ່​ກຳ​ນົດ​ເອງ ໃນ ແຜ່ນ​ວຽກ​ຂອງ​ພວກ​ເຮົາ ຄື ຟັງ​ຊັນ​ທີ່​ມີ​ຢູ່​ໃນ​ຕົວ . ໃນຕົວຢ່າງນີ້, ພວກເຮົາຈະໃຊ້ຟັງຊັນ CInt ເພື່ອ ປ່ຽນ strings ເປັນ ຈຳນວນເຕັມ ໃນຂະນະທີ່ສ້າງຟັງຊັນ ກຳນົດເອງ. ພວກ​ເຮົາ​ຍັງ​ສາ​ມາດ​ນໍາ​ໃຊ້​ທັງ​ຫມົດ ຟັງ​ຊັນ​ອື່ນໆ ທີ່​ອະ​ທິ​ບາຍ​ໃນ ວິ​ທີ​ການ 1 ເພື່ອ​ປ່ຽນ strings ເປັນ ​​ ປະ​ເພດ​ຂໍ້​ມູນ​ທີ່​ແຕກ​ຕ່າງ​ກັນ . ດຽວນີ້, ໃຫ້ເຮັດຕາມຂັ້ນຕອນລຸ່ມນີ້ເພື່ອເຮັດອັນນີ້ໃຫ້ສຳເລັດ.

ຂັ້ນຕອນ:

  • ຢູ່ນີ້, ໃນຕາລາງ B3:B7, ພວກເຮົາມີບາງອັນ. ສະຕຣິງຕົວເລກຄ່າ.

  • ດຽວນີ້, ໃນຕົວແກ້ໄຂພື້ນຖານພາບ, ສຳເນົາ ແລະ ວາງ ລະຫັດຕໍ່ໄປນີ້ ແລະ ຈາກນັ້ນ ກົດ Ctrl + S ເພື່ອ ບັນທຶກ
8313
  • ໃນຕາລາງ C3 , ເລີ່ມພິມ ຊື່ຟັງຊັນ ( StringToNumber ). Excel ຈະ ແນະນຳ ອັດຕະໂນມັດ ຟັງຊັນ ໃຫ້ໃຊ້. ກົດ ປຸ່ມ Tab ເພື່ອເຂົ້າສູ່ຟັງຊັນ.

  • ໃສ່ ຕາລາງອ້າງອີງ B3 ເປັນອາກິວເມັນອັນດຽວ.

  • ດຽວນີ້, ກົດ Enter ຫຼັງຈາກປິດວົງເລັບ.

  • ຊອກຫາ Fill Handle ຢູ່ ມຸມຂວາລຸ່ມ ຂອງຕາລາງ C3 ເພື່ອ ນຳໃຊ້ ການທໍາງານຂອງເຊລ C4:C7.

  • ຜົນສຸດທ້າຍແມ່ນຕົວເລກຈໍານວນເຕັມທີ່ຢາກໄດ້ຈາກຄ່າສະຕຣິງ. .

3. ລະຫັດ VBA ເພື່ອປ່ຽນຊ່ວງຂອງເຊລທີ່ເລືອກເປັນຕົວເລກໃນ Excel

ໃນຕົວຢ່າງນີ້, ພວກເຮົາຈະແປງ ໄລຍະ ຂອງ ເຊລທີ່ເລືອກ ມີຄ່າສະຕຣິງໄປຫາຕົວເລກຈຳນວນເຕັມ. ຖ້າຕາລາງໃດນຶ່ງມີຄ່າ ທີ່ບໍ່ແມ່ນຕົວເລກ ໃນມັນ, ຜົນອອກມາຈະເປັນ dash (-) line ແທນ . ປະຕິບັດຕາມ ຂັ້ນຕອນ :

  • ເລືອກຕາລາງ B3:B6 ມີ ສະຕຣິງຕົວເລກ ຄ່າ ແລະ B7 ເຊິ່ງປະກອບດ້ວຍ a ບໍ່ແມ່ນຕົວເລກ

  • ໃນ Visual Basic Editor ສຳເນົາ ແລະ ວາງ ຕໍ່ໄປນີ້ code .
7239
  • ດຽວນີ້, ກົດ F5 ເພື່ອ ແລ່ນ ອອກ ດັ່ງທີ່ສະແດງຢູ່ໃນ ພາບໜ້າຈໍ ຕໍ່ໄປນີ້.

ບັນທຶກ

  • ພວກເຮົາໄດ້ໃຊ້ isNumeric function ໃນ ທີ 2 ແລະທີ 3 ວິທີການ ໃນລະຫັດ VBA ຂອງພວກເຮົາທີ່ກວດເບິ່ງວ່າ expression ສາມາດປ່ຽນເປັນຕົວເລກໄດ້ຫຼືບໍ່.
  • In method 1 , ພວກເຮົາໄດ້ໃຊ້ຟັງຊັນໃນຕົວ (CInt, CDbl, CSng…..) ເພື່ອ ປ່ຽນຄ່າສະຕຣິງຕົວເລກ ເປັນ ຕົວເລກ . ແຕ່ຖ້າມີ ຄ່າທີ່ບໍ່ແມ່ນຕົວເລກ , ມັນຈະສະແດງຂໍ້ຜິດພາດ ບໍ່ກົງກັນ .

ສະຫຼຸບ

ດຽວນີ້, ພວກເຮົາຮູ້ວິທີປ່ຽນຄ່າສະຕຣິງເປັນຕົວເລກໃນ Excel. ຫວັງເປັນຢ່າງຍິ່ງ, ມັນຈະຊຸກຍູ້ໃຫ້ທ່ານໃຊ້ຟັງຊັນນີ້ຢ່າງໝັ້ນໃຈຫຼາຍຂຶ້ນ. ມີຄຳຖາມ ຫຼືຄຳແນະນຳໃດໆ ຢ່າລືມໃສ່ໃນປ່ອງຄຳເຫັນຂ້າງລຸ່ມ.

Hugh West ເປັນຄູຝຶກ Excel ທີ່ມີປະສົບການສູງແລະນັກວິເຄາະທີ່ມີປະສົບການຫຼາຍກວ່າ 10 ປີໃນອຸດສາຫະກໍາ. ລາວຈົບປະລິນຍາຕີສາຂາບັນຊີ ແລະການເງິນ ແລະປະລິນຍາໂທສາຂາບໍລິຫານທຸລະກິດ. Hugh ມີຄວາມກະຕືລືລົ້ນໃນການສອນແລະໄດ້ພັດທະນາວິທີການສອນທີ່ເປັນເອກະລັກທີ່ງ່າຍຕໍ່ການຕິດຕາມແລະເຂົ້າໃຈ. ຄວາມຮູ້ຊ່ຽວຊານຂອງລາວກ່ຽວກັບ Excel ໄດ້ຊ່ວຍໃຫ້ນັກຮຽນແລະຜູ້ຊ່ຽວຊານຫລາຍພັນຄົນໃນທົ່ວໂລກປັບປຸງທັກສະຂອງເຂົາເຈົ້າແລະດີເລີດໃນອາຊີບຂອງພວກເຂົາ. ຜ່ານ blog ຂອງລາວ, Hugh ແບ່ງປັນຄວາມຮູ້ຂອງລາວກັບໂລກ, ສະຫນອງການສອນ Excel ຟຣີແລະການຝຶກອົບຮົມອອນໄລນ໌ເພື່ອຊ່ວຍໃຫ້ບຸກຄົນແລະທຸລະກິດສາມາດບັນລຸທ່າແຮງຂອງພວກເຂົາ.