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