តារាងមាតិកា
នៅក្នុងអត្ថបទនេះ ខ្ញុំនឹងបង្ហាញអ្នកពីរបៀបដែលអ្នកអាចបំបែកខ្សែអក្សរទៅជា array ក្នុង VBA ។ Split គឺជាផ្នែកមួយនៃមុខងារសំខាន់បំផុត និងប្រើប្រាស់យ៉ាងទូលំទូលាយ ដែលយើងប្រើក្នុង VBA ។ អ្នកនឹងរៀនបំបែកខ្សែអក្សរនៅក្នុង VBA តាមគ្រប់វិធីដែលអាចធ្វើទៅបាន។
មុខងារបំបែក VBA (ទិដ្ឋភាពរហ័ស)
=Split(Expression As String, [Delimiter], [Limit As Long=1], [CompareAsVbCompareMethod=vbBinaryCompare])
ទាញយកសៀវភៅលំហាត់
បំបែកខ្សែអក្សរទៅជា Array.xlsm
3 វិធីដើម្បីបំបែកខ្សែអក្សរទៅជាអារេក្នុង VBA
តោះមានខ្សែអក្សរនៅក្នុងដៃ “យើងបានដាក់ពាក្យសុំទិដ្ឋាការរបស់សហរដ្ឋអាមេរិក កាណាដា អូស្ត្រាលី និងបារាំង ” .
ខ្ញុំនឹងបង្ហាញអ្នកពីរបៀបដែលអ្នកអាចបំបែកខ្សែអក្សរនេះទៅជា array តាមគ្រប់វិធីដែលអាចធ្វើទៅបានដោយប្រើ មុខងារបំបែក នៃ VBA .
1. ប្រើ Delimiter ណាមួយដើម្បីបំបែក String ទៅជា Array ក្នុង VBA
អ្នកអាចប្រើ string ណាមួយជាអ្នកកំណត់ព្រំដែន ដើម្បីបំបែក String ទៅជា Array ក្នុង VBA ។
វាអាចជា ចន្លោះ (“ “) , សញ្ញាក្បៀស (“,”) , semicolon (“:”) , តួអក្សរតែមួយ, a ខ្សែអក្សរ ឬអ្វីទាំងអស់។
⧭ ឧទាហរណ៍ 1:
តោះបំបែកខ្សែអក្សរដោយប្រើ សញ្ញាក្បៀស ជា អ្នកកំណត់ព្រំដែន។
បន្ទាត់នៃកូដនឹងមាន៖
Arr = Split(Text, ",")
កូដ VBA ពេញលេញនឹងមានៈ
⧭ កូដ VBA៖
6981
⧭ លទ្ធផល៖
វានឹងបំបែកខ្សែអក្សរទៅជាអារេដែលមាន {“យើងបានដាក់ពាក្យសុំទិដ្ឋាការរបស់សហរដ្ឋអាមេរិក”, “កាណាដា”, “អូស្ត្រាលី”, “France"}។
⧭ ឧទាហរណ៍ 2:
អ្នកក៏អាចប្រើ space (“ ”) ជាអ្នកកំណត់ព្រំដែន។
បន្ទាត់នៃកូដនឹងមាន៖
Arr = Split(Text, " ")
កូដ VBA ពេញលេញនឹងមាន៖
⧭ កូដ VBA៖
5403
⧭ លទ្ធផល៖
វានឹងបំបែកខ្សែអក្សរទៅជាអារេដែលមាន {“We”, “applied”, “for”, “the”, “visa”, “of”, “U.S,”, “Canada,”, “Australia,”, “France,”}.
⧭ អ្វីដែលត្រូវចងចាំ៖
- កំណត់ព្រំដែនលំនាំដើមគឺ ដកឃ្លា (“ ”) ។
- នោះគឺប្រសិនបើអ្នកមិនបញ្ចូលសញ្ញាកំណត់ណាមួយទេ វានឹងប្រើ space ជាអ្នកកំណត់ព្រំដែន។
អានបន្ថែម៖ បំបែកខ្សែអក្សរតាមតួអក្សរក្នុង Excel (6 វិធីសមស្រប)
ការអានស្រដៀងគ្នា៖
- បំបែកអត្ថបទទៅជាពហុ ក្រឡាក្នុង Excel
- VBA ដើម្បីទទួលបានតម្លៃពិសេសពីជួរឈរទៅជាអារេក្នុង Excel (3 លក្ខណៈវិនិច្ឆ័យ)
- Excel VBA៖ របៀបត្រងជាមួយច្រើន លក្ខណៈវិនិច្ឆ័យក្នុងអារេ (7 វិធី)
2. បំបែក String ចូលទៅក្នុង Array ជាមួយនឹងចំនួនធាតុណាមួយ
អ្នកអាចបំបែក String ទៅជា Array ជាមួយនឹងចំនួន Item ណាមួយតាមបំណងប្រាថ្នារបស់អ្នក។
បញ្ចូលចំនួន Item ជា អាគុយម៉ង់ ទី 3 នៃ អនុគមន៍បំបែក ។
⧭ ឧទាហរណ៍៖
តោះបំបែក ខ្សែអក្សរចូលទៅក្នុងធាតុ 3 ដំបូងដែលមាន ដកឃ្លា ជាអ្នកកំណត់ព្រំដែន។
បន្ទាត់នៃកូដនឹងbe:
Arr = Split(Text, " ", 3)
ហើយ លេខកូដ VBA នឹងជា៖
⧭ លេខកូដ VBA៖
6406
⧭ លទ្ធផល៖
វានឹងបំបែកខ្សែអក្សរទៅជា អារេមានធាតុ 3 ដំបូងបំបែកដោយអ្នកកំណត់ព្រំដែន ដកឃ្លា ។
⧭ អ្វីដែលត្រូវចងចាំ៖
- អាគុយម៉ង់លំនាំដើមគឺ -1 ។
- មានន័យថា ប្រសិនបើអ្នកមិនបញ្ចូលអាគុយម៉ង់ទេ វានឹងបំបែក ខ្សែអក្សរទៅក្នុងចំនួនដងអតិបរមាដែលអាចធ្វើទៅបាន។
អានបន្ថែម៖ របៀបបំបែកខ្សែអក្សរតាមប្រវែងក្នុង Excel (8 វិធី)
<៩> ៣. ប្រើទាំងពីរ Case-Sensitive និង Insensitive Delimiter ដើម្បីបំបែក String a Array ក្នុង VBAThe Split function ផ្តល់ឱ្យអ្នកអោយប្រើទាំង case-sensitive និង សញ្ញាកំណត់ case-insensitive ។
សម្រាប់អ្នកកំណត់ព្រំដែន case-insensitive សូមបញ្ចូលអាគុយម៉ង់ ទី4 ជា 1។
ហើយសម្រាប់អ្នកកំណត់ព្រំដែន មិនប្រកាន់អក្សរតូចធំ សូមបញ្ចូលអាគុយម៉ង់ 4th ជា 0 ។
⧭ ឧទាហរណ៍ទី 1៖ កំណត់ព្រំដែនដែលមិនប្រកាន់អក្សរតូចធំ
នៅក្នុងខ្សែអក្សរដែលបានផ្តល់ឱ្យ យើងពិចារណាអត្ថបទ “FOR” ជាសញ្ញាកំណត់ និង 2 ជា ចំនួនសរុបនៃធាតុនៃអារេ។
ឥឡូវនេះ សម្រាប់ករណី មិនប្រកាន់អក្សរតូចធំ បន្ទាត់នៃកូដនឹងមាន៖
Arr = Split(Text, "FOR ", 3,1)
ហើយ លេខកូដ VBA ពេញលេញនឹងមានៈ
⧭ លេខកូដ VBA៖
8130
⧭ លទ្ធផល៖
ដោយសារអ្នកកំណត់ព្រំដែនគឺ មិនប្រកាន់អក្សរតូចធំ នៅទីនេះ “FOR ” នឹងដំណើរការជា “for” ហើយវានឹងបំបែកខ្សែអក្សរទៅជាអារេនៃធាតុពីរ។
⧭ ឧទាហរណ៍ 2៖ Case-Sensitive Delimiter
ម្តងទៀត សម្រាប់ករណី case-sensitive បន្ទាត់នៃកូដនឹងមាន៖
Arr = Split(Text, "FOR ", 3,0)
ហើយ លេខកូដ VBA ពេញលេញនឹងមានៈ
⧭ កូដ VBA៖
7895
⧭ លទ្ធផល៖
ដោយសារអ្នកកំណត់ព្រំដែនគឺ ប្រកាន់អក្សរតូចធំ នៅទីនេះ “ FOR" នឹងមិនដូច "សម្រាប់" ហើយវានឹងមិនបំបែកខ្សែអក្សរទៅជាអារេនៃធាតុពីរទេ។
អានបន្ថែម៖ Excel VBA៖ យកស្ទួនចេញពីអារេ (ឧទាហរណ៍ 2)
⧭ អ្វីដែលត្រូវចងចាំ៖
- តម្លៃលំនាំដើមនៃអាគុយម៉ង់គឺ 0 ។
- នោះគឺប្រសិនបើអ្នកមិនដាក់តម្លៃនៃអាគុយម៉ង់ 4th នោះ វានឹងដំណើរការសម្រាប់ការផ្គូផ្គង ប្រកាន់អក្សរតូចធំ ។
សេចក្តីសន្និដ្ឋាន
ដូច្នេះ ដោយប្រើវិធីសាស្ត្រទាំងនេះ អ្នកអាចប្រើ មុខងារបំបែក នៃ VBA ដើម្បីបំបែកខ្សែអក្សរទៅជាអារេនៃធាតុ។ តើអ្នកមានសំណួរទេ? រីករាយក្នុងការសួរពួកយើង។