අන්තර්ගත වගුව
මෙම ලිපියෙන්, Excel VBA හි තන්තුව අංකයට පරිවර්තනය කිරීමේ ක්රම කිහිපයක් අපි සාකච්ඡා කරමු. VBA කේත උදාහරණ සමඟින් තන්තුව අංකයට පරිවර්තනය කිරීම සඳහා ගොඩනඟන ලද ශ්රිත භාවිත කර අභිරුචි ශ්රිතයක් නිර්මාණය කරන්නේ කෙසේදැයි අපි බලමු.
ප්රායෝගික වැඩපොත බාගන්න
ඔබ මෙම ලිපිය කියවන අතරතුර ව්යායාම කිරීමට මෙම පුහුණු වැඩපොත බාගන්න.
තන්තුව අංකයට පරිවර්තනය කරන්න.xlsm
3 ක්රම 3 ක් අංකයට පරිවර්තනය කරන්න Excel VBA හි
1. Type Conversion Functions භාවිතා කරමින් String අංකයට පරිවර්තනය කරන්න
Excel විසින් type conversion functions කිහිපයක් සපයයි. string datatype සිට විවිධ datatypes වෙත පහසුවෙන් පරිවර්තනය කිරීමට අපගේ VBA කේතය තුළ අපට ඒවා භාවිත කළ හැක.
1.1 String to Integer
string ට පරිවර්තනය කිරීමට නිඛිල , අපට අපගේ කේතයේ CInt ශ්රිතය භාවිතා කළ හැක. CInt ශ්රිතය ගන්නේ එක තර්කයක් පමණක් වන අතර එය සංඛ්යාත්මක අගයක් විය යුතුය. අපි දෘශ්ය කේත සංස්කාරකයේ පහත කේතය උත්සාහ කරමු.
1237
ධාවනය කිරීමට F5 ඔබන්න කේතය . ප්රතිදානය MsgBox හි පෙන්වා ඇත.
CInt ශ්රිතය පරිවර්තනය කරන ලදී සංඛ්යා තන්තුව අගය (“12.3” ) සිට පූර්ණ සංඛ්යාවකට 12.
CInt ශ්රිතය පිළිබඳ වැඩිදුර අවබෝධ කර ගැනීමට, පහත ක්රියාදාමය ක්රියාත්මක කරන්න. කේත සංස්කාරකයේ කේතය සහ ප්රතිඵල නිරීක්ෂණය කරන්න.
6232
ප්රතිදානය මෙහි ඇත තිර රුව පහතින් ඊළඟ ලූපය CInt ශ්රිතය සෛල තන්තු මත යෙදීමට B3:B7. ප්රතිදාන C3:C7 සෛල තුළ මුද්රණය වේ. අපි ආදාන අගයන් සහ ප්රතිදාන අගයන් මුද්රණය කළ යුත්තේ කොතැනද යන්න සඳහන් කිරීමට Cells ශ්රිතය භාවිතා කළෙමු.
ප්රතිඵල
CInt ශ්රිතය 25.5 ඊළඟ පූර්ණ සංඛ්යා 26 ට පරිවර්තනය කරන ලදී. අනෙක් අතට, එය 10.3 ට පරිවර්තනය කළේ 11 නොව 10 ය. දශම සංඛ්යාත්මක අගයක් .5ට වඩා අඩු වූ විට, ශ්රිතය එම සංඛ්යාවටම වටේ. නමුත් දශම සංඛ්යාත්මක තන්තු අගය ඊළඟ නිඛිල සංඛ්යාව සමාන හෝ .5 ට වඩා වැඩි නම්
වෙත හැරේ.සටහන
නිඛිල අගයට -32,768 සිට 32,767 අතර පරාසයක් ඇත. අපි මෙම පරාසයෙන් පිටත සංඛ්යාත්මක අගයක් තැබුවහොත්, Excel දෝෂයක් පෙන්වයි .
1.2 String to Long
CLng ශ්රිතය සංඛ්යාත්මක තන්තු අගයක් දිගු දත්ත වර්ගයකට පරිවර්තනය කරයි. එය CInt ශ්රිතයට සමානව ක්රියා කරයි. ප්රධාන වෙනස පවතින්නේ එහි පරාසය වන අතර එය -2,147,483,648 සහ 2,147,483,647 අතර වේ.
The code to run is here below:9874
මෙහි, සෛල B3:B9 සමහර සංඛ්යාත්මක තන්තු අගය අඩංගු වන අතර, පරිවර්තනය කරන ලද l ong අංක කොටුවල ඇත C3:C9. CLng ශ්රිතය පරිවර්තනය කරන ලදී -32800 සහ 32800 දිගු අංක වෙත CInt ශ්රිතයට නොහැකි විය. නමුත් ආදානය සංඛ්යාත්මක අගය පරාසයෙන් පිටත නම් එය දෝෂයක් ද ලබයි.
10> 1.3 තන්තුවෙන් දශමයට
CDec ශ්රිතය භාවිතයෙන් අපට පරිවර්තනය කළ හැක a සංඛ්යාත්මක තන්තු අගය සිට දක්වා දශම දත්ත වර්ගය. පහත කේතය පරිවර්තනය කිරීමට සංඛ්යාත්මක අගයන් B3:B7 සෛල තුළ දශම දත්ත වර්ගයට
6741ක්රියාත්මක කරන්න.
1.4 තන්තුව සිට තනි දක්වා
මෙම උදාහරණයේදී, අපි ආදාන තන්තු තනි දත්ත වර්ගය (තනි) බවට පත් කරන්නෙමු - නිරවද්ය පාවෙන ලක්ෂ්යය) සංඛ්යා. මේ සඳහා, අපට CSng ශ්රිතය භාවිතා කිරීමට අවශ්ය වේ.
තනි දත්ත වර්ග පරාසයන්- (i) -3.402823E38 සිට -1.401298E-45 සෘණ සංඛ්යා සඳහා.
(ii) 1.401298E-45 සිට 3.00 දක්වා 3.03>3.03>3>3>3 ධනාත්මක සංඛ්යා.
පහත දැක්වෙන කේතය දෘශ්ය මූලික සංස්කාරකයේ ක්රියාත්මක කරන්න.
2435
ප්රතිදානයේ, සෛල B3:B9 සමහර සංඛ්යාත්මක තන්තු අගය අඩංගුය, සහ පරිවර්තනය කරන ලද තනි දත්ත වර්ග අංක C3:C9 සෛල තුළ ඇත. නමුත් එය දෝෂයක් ද ලැබෙනු ඇත ආදානය සංඛ්යාත්මක අගය පරාසයෙන් පිටත නම්.
1.5 තන්තුව සිට ද්විත්ව දක්වා
මෙම උදාහරණයේදී, අපි ආදාන තන්තු ද්විත්ව දත්ත වර්ගය බවට පත් කරන්නෙමු (ද්විත්ව නිරවද්ය පාවෙන - ලක්ෂ්යය) සංඛ්යා. මේ සඳහා, අපට අවශ්යයි CDbl ශ්රිතය භාවිතා කිරීමට.
ද්විත්ව දත්ත වර්ග පරාසයන්- (i) -1.79769313486231E308 සිට -4.94065645841247E-324 <3 සඳහා>සෘණ සංඛ්යා.
(ii) 4.94065645841247E-324 ට 9 දක්වා ධන 18 සිට 90 දක්වා 18 දක්වා nus. 30 ට 7. 1000 දක්වා 1000 දක්වා .
පහත දැක්වෙන කේතය දෘශ්ය මූලික සංස්කාරකයේ ක්රියාත්මක කරන්න.
4487
ප්රතිදානයේ, සෛල B3:B9 සමහර <අඩංගු වේ. 3>සංඛ්යාත්මක තන්තු අගය සහ පරිවර්තනය කරන ලද ද්විත්ව දත්ත වර්ග අංක C3:C9 සෛල තුළ ඇත. නමුත් දෝෂයක් ආදානය <නම් එය ද ලැබෙනු ඇත. 3>සංඛ්යාත්මක අගය පරාසයෙන් බැහැරය.
1.6 තන්තුව සිට ව්යවහාර මුදල්
මුදල් වෙත ගණනය කිරීම් සම්බන්ධ වන විට මුදල් දත්ත වර්ගය ප්රයෝජනවත් වේ. එපමණක් නොව, අපට ස්ථාවර – ලක්ෂ්යය ගණනය තුළ වැඩි නිරවද්යතාවයක් අවශ්ය නම්, මුදල් දත්ත වර්ගය භාවිතය හොඳ තේරීමක් වේ. තන්තුවක් මුදල් දත්ත වර්ගයක් බවට පරිවර්තනය කිරීමට අපට CCur ශ්රිතය භාවිත කිරීමට අවශ්ය වේ. දත්ත වර්ගය -922,337,203,685,477.5808 සිට 922,337,203,685,477.5808 දක්වා වේ කොටු 4> B3:B7 සිට මුදල් දත්ත වර්ගය C3:C7 මෙහි පහත ඇත.
5063
1.7 String to Byte
CByte ශ්රිතය සංඛ්යාත්මක තන්තු අගයන් byte data type වෙත පරිවර්තනය කරයි, එය සිට පරාසයක පවතී. 0 සිට 255 දක්වා.
කේතය ලෙසඅනුගමනය කරයි :
6808
ප්රතිදානයේ, සෛල B3:B9 සමහරක් සංඛ්යාත්මක තන්තු අගය අඩංගු වේ, සහ පරිවර්තනය කරන ලද බයිට් දත්ත වර්ගයේ අංක සෛල තුළ ඇත C3:C9. නමුත් එයට දෝෂයක් ද ලැබෙනු ඇත ආදානය සංඛ්යාත්මක අගය පරාසයෙන් බැහැර නම්.
තවත් කියවන්න: Excel හි දිගු කාලයක් භාවිතා කරන VBA වෙත String පරිවර්තනය කරන්නේ කෙසේද
සමාන කියවීම්
- Excel VBA හි String ද්විත්වයට පරිවර්තනය කරන්න (ක්රම 5)
- Excel VBA සමඟින් පෙළ අංකයට පරිවර්තනය කරන්නේ කෙසේද (Macros සමඟ උදාහරණ 3ක්)
- Excel හි අංකයට පරිවර්තනය කිරීමේ දෝෂය නිවැරදි කරන්න (ක්රම 6)
- Excel හි විද්යාත්මක අංකනය අංක බවට පරිවර්තනය කරන්නේ කෙසේද (ක්රම 7)
2. එක්සෙල් හි තන්තුව අංකයට පරීක්ෂා කිරීමට සහ පරිවර්තනය කිරීමට අභිරුචි VBA ශ්රිතය භාවිතා කිරීම
මෙම නිදර්ශනයේදී, අපි පරිවර්තනය සඳහා අභිරුචි ශ්රිතයක් කරන්නෙමු. අංක වලට නූල්. එවිට අපට මෙම අභිරුචි ශ්රිතය අපගේ වැඩ පත්රිකාවේ බිල්ට් ශ්රිතයක් වැනි භාවිත කළ හැක. මෙම උදාහරණයේ දී, අපි අභිරුචි ශ්රිතය නිර්මාණය කිරීමේදී CInt ශ්රිතය ට තන්තු පූර්ණ සංඛ්යා වෙත පරිවර්තනය කරන්නෙමු. අපට තත්පර ට විවිධ දත්ත වර්ග පරිවර්තනය කිරීම සඳහා ක්රමය 1 හි විස්තර කර ඇති සියලුම අනෙකුත් කාර්යයන් භාවිතා කළ හැක. දැන්, මෙය ඉටු කිරීමට පහත පියවර අනුගමනය කරන්න.
පියවර:
- මෙහි, සෛල B3:B7, අපට ඇත සංඛ්යාත්මක තන්තුවඅගයන්.
- දැන් දෘශ්ය මූලික සංස්කාරකයේ පිටපත් කරන්න හා පහත දැක්වෙන කේතය අලවන්න සහ ඉන්පසු සුරකින්න Ctrl + S ඔබන්න
4068
- කොටුව තුළ C3 , ටයිප් කිරීම ආරම්භ කරන්න ක්රියාකාරී නාමය ( StringToNumber ). Excel ස්වයංක්රීයව කාර්යය භාවිතා කිරීමට යෝජනා කරයි. ශ්රිතයට ඇතුළු වීමට Tab යතුර ඔබන්න.
- සෛල යොමු B3 දමන්න. එකම තර්කය ලෙස.
- දැන්, වරහන් වැසීමෙන් පසු Enter ඔබන්න.
- සොයා ගන්න
- අවසාන ප්රතිදානය වන්නේ තන්තු අගයන්ගෙන් ලැබෙන ප්රමෝදිත පූර්ණ සංඛ්යා වේ. .
3. එක්සෙල් හි තෝරාගත් සෛල පරාසයක් අංක බවට පරිවර්තනය කිරීමට VBA කේතය
මෙම නිදර්ශනයේ දී, අපි තෝරාගත් සෛල පරාසයක් පරිවර්තනය කරන්නෙමු. නිඛිල සංඛ්යා වෙත තන්තු අගයන් අඩංගු වේ. කිසියම් කොටුවක සංඛ්යාත්මක නොවන අගයක් තිබේ නම්, ප්රතිදානය ඩෑෂ් (-) රේඛාවක් ඒ වෙනුවට වේ. පියවර :
- තෝරන කොටු B3:B6 සංඛ්යාත්මක තන්තු අගය සහ B7 අඩංගුව අනුගමනය කරන්න a සංඛ්යාත්මක නොවන
- දෘශ්ය මූලික සංස්කාරකයේ පිටපත සහ පහත දැක්වෙන අලවන්න කේතය .
8109
- දැන්, ප්රතිදානය හි පෙන්වා ඇති පරිදි ධාවනය කිරීමට F5 ඔබන්න පහත තිර රුව .
සටහන්
- අපි භාවිත කළා isNumeric ශ්රිතය 2වන සහ 3වන ක්රම හි ප්රකාශනයක් අංකයකට පරිවර්තනය කළ හැකිද යන්න පරීක්ෂා කරන අපගේ VBA කේතයෙහි.
- In ක්රමය 1 , අපි සංඛ්යාත්මක තන්තු අගයන් සංඛ්යා ට පරිවර්තනය කිරීමට බිල්ට්-ඉන් ශ්රිත (CInt, CDbl, CSng.....) භාවිතා කළෙමු. නමුත් සංඛ්යාත්මක නොවන අගයක් තිබේ නම්, එය නොගැලපෙන දෝෂයක් පෙන්වයි.
නිගමනය
දැන්, Excel හි තන්තු අගයන් සංඛ්යා බවට පරිවර්තනය කරන්නේ කෙසේදැයි අපි දනිමු. මෙම ක්රියාකාරිත්වය වඩාත් විශ්වාසයෙන් භාවිතා කිරීමට එය ඔබව දිරිමත් කරනු ඇතැයි බලාපොරොත්තු වෙමු. ඕනෑම ප්රශ්නයක් හෝ යෝජනා ඒවා පහත අදහස් පෙට්ටියේ තැබීමට අමතක නොකරන්න.