តារាងមាតិកា
ប្រសិនបើអ្នកកំពុងស្វែងរកមធ្យោបាយងាយស្រួលបំផុតដើម្បីស្វែងរកការផ្គូផ្គងពិតប្រាកដដោយប្រើ VBA នោះអ្នកនឹងឃើញថាអត្ថបទនេះមានប្រយោជន៍។ ដូច្នេះ សូមចាប់ផ្តើមជាមួយអត្ថបទ ហើយស្វែងយល់ពីវិធីស្វែងរកការផ្គូផ្គងពិតប្រាកដ។
ទាញយកសៀវភៅការងារ
VBA Find Exact Match.xlsm
5 វិធីដើម្បីស្វែងរកការផ្គូផ្គងពិតប្រាកដដោយប្រើ VBA
ខ្ញុំបានប្រើតារាងខាងក្រោមដែលមានកំណត់ត្រាលទ្ធផលរបស់សិស្សមួយចំនួន។ ខ្ញុំនឹងពន្យល់ពីវិធីផ្សេងគ្នាដើម្បីស្វែងរកការផ្គូផ្គងពិតប្រាកដដោយប្រើតារាងនេះដោយមានជំនួយពី VBA។
សម្រាប់គោលបំណងនេះ ខ្ញុំបានប្រើកំណែ Microsoft Excel 365 អ្នកអាចប្រើកំណែផ្សេងទៀតណាមួយ យោងទៅតាមភាពងាយស្រួលរបស់អ្នក។
វិធីសាស្រ្ត-1៖ ស្វែងរកការផ្គូផ្គងពិតប្រាកដនៅក្នុងជួរក្រឡា
ប្រសិនបើអ្នកចង់ស្វែងរកការផ្គូផ្គងពិតប្រាកដនៃខ្សែអក្សរដូចជា ឈ្មោះរបស់សិស្ស ហើយបន្ទាប់មកស្វែងរកទីតាំងក្រឡារបស់សិស្សនេះ បន្ទាប់មកអ្នកអាចធ្វើវាបានដោយធ្វើតាមវិធីនេះ។
នៅទីនេះ ខ្ញុំនឹងស្វែងរកការផ្គូផ្គងពិតប្រាកដសម្រាប់ សិស្សឈ្មោះ “Joseph Micahel” ។
Step-01 :
➤ ចូលទៅកាន់ Developer Tab>> Visual Basic Option
បន្ទាប់មក Visual Basic Editor នឹងបើកឡើង។
➤ចូលទៅកាន់ បញ្ចូល Tab>> ម៉ូឌុល ជម្រើស
បន្ទាប់ពីនោះ ម៉ូឌុល នឹងត្រូវបានបង្កើត។
ជំហាន-02 :
➤ សរសេរកូដខាងក្រោម
2611
នៅទីនេះ “ការផ្គូផ្គងពិតប្រាកដ” គឺជាឈ្មោះសន្លឹក ហើយ “B5:B10” គឺជាជួរនៃឈ្មោះសិស្ស ហើយ “Joseph Michael” គឺជាឈ្មោះរបស់សិស្សដែលត្រូវស្វែងយល់។
rng ត្រូវបានប្រកាសថាជាវត្ថុជួរ និង str ជាអថេរខ្សែអក្សរដើម្បីរក្សាទុកអាសយដ្ឋានរបស់ធាតុដែលបានស្វែងរក។
សេចក្តីថ្លែងការណ៍ IF នឹងកំណត់អាសយដ្ឋានរបស់ធាតុទៅអថេរ str ។
➤ ចុច F5
លទ្ធផល :
បន្ទាប់ពីនោះ អ្នកនឹងទទួលបាន ខាងក្រោម ប្រអប់សារ ដែលមានទីតាំងក្រឡារបស់សិស្សដែលមានឈ្មោះថា “Joseph Michael” ។
អានបន្ថែម៖ ស្វែងរកក្នុងជួរជាមួយ VBA ក្នុង Excel៖ រួមទាំងការផ្គូផ្គងជាក់លាក់ និងផ្នែក
វិធីទី 2៖ ស្វែងរកការផ្គូផ្គងពិតប្រាកដ និងជំនួសវាដោយប្រើ VBA
ខ្ញុំនឹងបង្ហាញ វិធីស្វែងរកឈ្មោះសិស្សដែលបានចង្អុលបង្ហាញ ហើយបន្ទាប់មកជំនួសវាដោយឈ្មោះផ្សេងទៀត ពីព្រោះឈ្មោះនេះត្រូវបានសរសេរនៅទីនេះដោយច្រឡំ។ អ្នកអាច ស្វែងរកខ្សែអក្សរដែលអ្នកចង់បាន ហើយជំនួសវា ដោយធ្វើតាមវិធីនេះ។
ជំហាន-01 :
➤អនុវត្តតាម ជំហាន-01 នៃ វិធីសាស្រ្ត-1
6550
នៅទីនេះ “find&replace” គឺជាឈ្មោះសន្លឹក និង “B5:B10” គឺជាជួរនៃឈ្មោះសិស្ស ហើយ “Donald Paul” គឺជាឈ្មោះសិស្សដែលត្រូវស្វែងយល់ ហើយបន្ទាប់មក “Henry Jackson” នឹង ធ្វើជាឈ្មោះសិស្សជំនួសឱ្យលេខមុន។
ជាមួយ សេចក្តីថ្លែងការណ៍នឹងជៀសវាងការដដែលៗនៃបំណែកនៃកូដនៅក្នុងរាល់ statement។
The IF សេចក្តីថ្លែងការណ៍នឹងចាត់ចែងអាសយដ្ឋានរបស់ធាតុទៅកាន់ str អថេរ ហើយ DO រង្វិលជុំនឹងជំនួសការកើតឡើងទាំងអស់នៃពាក្យស្វែងរក។
➤ចុច F5
លទ្ធផល :
បន្ទាប់ពីនោះ អ្នកនឹងទទួលបានឈ្មោះសិស្សថ្មីជា “Henry Jackson” ។
វិធីសាស្រ្ត-3៖ ស្វែងរកការផ្គូផ្គងជាក់លាក់ និងប្រកាន់អក្សរតូចធំ
ប្រសិនបើអ្នកចង់ស្វែងរកការផ្គូផ្គងដែលប្រកាន់អក្សរតូចធំ សូមអនុវត្តតាមវិធីនេះ។ នៅទីនេះ ខ្ញុំមានឈ្មោះពីរស្រដៀងនឹងឈ្មោះមួយទៀត ប៉ុន្តែមានភាពខុសប្លែកគ្នានៅក្នុងសំណុំរឿង ហើយអាស្រ័យលើករណី ខ្ញុំនឹងជំនួសឈ្មោះសិស្សចុងក្រោយ។
ជំហាន -01 :
➤អនុវត្តតាម ជំហាន-01 នៃ វិធីសាស្រ្ត-1
9619
នៅទីនេះ “ប្រកាន់អក្សរតូចធំ” គឺជាឈ្មោះសន្លឹក ហើយ “B5:B10” ជាជួរនៃឈ្មោះសិស្ស ហើយ “Donald Paul” គឺជាឈ្មោះសិស្សដែលត្រូវស្វែងយល់ និង បន្ទាប់មក “Henry Jackson” នឹងជាឈ្មោះសិស្សជំនួសឱ្យឈ្មោះមុន។
ជាមួយ សេចក្តីថ្លែងការណ៍នឹងជៀសវាងការដដែលៗនៃបំណែកនៃកូដនៅក្នុងរាល់សេចក្តីថ្លែងការណ៍។
សេចក្តីថ្លែងការណ៍ IF នឹងកំណត់អាសយដ្ឋានរបស់ធាតុទៅអថេរ str ហើយ DO រង្វិលជុំនឹងជំនួសការកើតឡើងទាំងអស់នៃពាក្យស្វែងរក។
➤ ចុច F5
លទ្ធផល :
ឥឡូវនេះ យោងតាមករណី ឈ្មោះសិស្សនឹងត្រូវបានប្តូរទៅជា “Henry Jackson” ។
ការអានស្រដៀងគ្នា៖
- របៀបស្វែងរកខ្សែអក្សរក្នុងក្រឡាដោយប្រើ VBA ក្នុង Excel (2 Methods)<2
- VBAស្វែងរកក្នុងជួរឈរក្នុង Excel (7 វិធីសាស្រ្ត)
- របៀបស្វែងរកខ្សែអក្សរជាមួយ VBA ក្នុង Excel (8 ឧទាហរណ៍)
វិធីទី 4៖ ការប្រើប្រាស់ អនុគមន៍ InStr
ឧបមាថា អ្នកចង់ផ្គូផ្គង Pass ឬ Fail to Record ទៅនឹងឈ្មោះសិស្ស អាស្រ័យលើ ជួរឈរលទ្ធផល ដែល Pass ឬ Fail ត្រូវបានសរសេរ។ ដើម្បីស្វែងរកខ្សែអក្សរនេះនៅក្នុង ជួរឈរលទ្ធផល ហើយសរសេរចុះ “Passed” នៅក្នុង ជួរឈរស្ថានភាព សម្រាប់សិស្សដែលប្រឡងជាប់ អ្នកអាចប្រើ អនុគមន៍ InStr .
ជំហាន-01 :
➤អនុវត្តតាម ជំហាន-01 នៃ Method-1
6102
នៅទីនេះ ជួរក្រឡាគឺ C5:C10 ដែលជា ជួរឈរលទ្ធផល
InStr(តម្លៃក្រឡា “Pass”) > 0 គឺជាលក្ខខណ្ឌដែលលេខធំជាងសូន្យ (នៅពេលដែលក្រឡាមាន “Pass” ) បន្ទាប់មកបន្ទាត់ខាងក្រោមនឹងបន្ត ហើយផ្តល់លទ្ធផលនៅក្នុងក្រឡាដែលនៅជាប់គ្នាជា បានឆ្លងកាត់ .
ប្រសិនបើលក្ខខណ្ឌក្លាយជាមិនពិត មានន័យថាក្រឡាមួយមិនមាន “Pass” ទេនោះបន្ទាត់ក្រោម ELSE នឹងប្រតិបត្តិ និងផ្តល់តម្លៃលទ្ធផលនៅក្នុង ក្រឡាជាប់គ្នាជា ទទេ ។
រង្វិលជុំនេះនឹងបន្តសម្រាប់ក្រឡានីមួយៗ។
➤ចុច F5
លទ្ធផល :
បន្ទាប់មក អ្នកនឹងទទួលបានស្ថានភាព “ឆ្លងកាត់” សម្រាប់សិស្សដែលបានប្រឡងជាប់។
វិធីសាស្រ្ត-5៖ ស្វែងរកការផ្គូផ្គងជាក់លាក់ និងស្រង់ទិន្នន័យ
ប្រសិនបើអ្នកចង់ស្រង់ទិន្នន័យទិន្នន័យដែលត្រូវគ្នាសម្រាប់សិស្សដែលមានឈ្មោះ “Michael James” បន្ទាប់មកអ្នកអាចអនុវត្តតាមវិធីសាស្ត្រនេះ។
ជំហាន-01 :
➤អនុវត្តតាម ជំហាន-01 នៃ វិធីសាស្រ្ត-1
8264
នៅទីនេះ ខ្ញុំបានប្រើ B100 ជា សកម្ម ជួរសន្លឹក (អ្នកអាចប្រើជួរណាមួយតាមការប្រើប្រាស់របស់អ្នក)។
InStr(1, Range(“B” & i), “Michael James”) > 0 គឺជាលក្ខខណ្ឌសម្រាប់ពិនិត្យមើលថាតើក្រឡាក្នុងជួរឈរ B មាន Michael James ។
Range(“E ” & icount & “:G” & icount) គឺជាជួរដែលអ្នកចង់បានទិន្នន័យលទ្ធផលរបស់អ្នក និង Range(“B” & i & “:D” & i)។តម្លៃ នឹងផ្តល់តម្លៃពីជួរឈរ B ទៅ D ។
➤ចុច F5
លទ្ធផល :
បន្ទាប់មក អ្នកនឹងទទួលបានទិន្នន័យដកស្រង់ខាងក្រោមសម្រាប់សិស្សដែលមានឈ្មោះ Michael James ។
ផ្នែកអនុវត្ត
សម្រាប់ការអនុវត្តន៍ដោយខ្លួនឯង យើងបានផ្តល់នូវផ្នែក Practice ដូចខាងក្រោមនៅក្នុងសន្លឹកមួយដែលមានឈ្មោះថា Practice ។ សូមធ្វើវាដោយខ្លួនអ្នក។
សេចក្តីសន្និដ្ឋាន
នៅក្នុងអត្ថបទនេះ ខ្ញុំបានព្យាយាមរៀបរាប់ពីវិធីងាយស្រួលបំផុតដើម្បីស្វែងរកការផ្គូផ្គងពិតប្រាកដដោយប្រើ VBA ក្នុង Excel ប្រកបដោយប្រសិទ្ធភាព។ សង្ឃឹមថាអ្នកនឹងយល់ថាវាមានប្រយោជន៍។ ប្រសិនបើអ្នកមានសំណូមពរ ឬចម្ងល់ផ្សេងៗ សូមមានអារម្មណ៍សេរីក្នុងការចែករំលែកវាជាមួយពួកយើង។