មាតិកា
ពេលខ្លះវាត្រូវចំណាយពេលយូរណាស់ដើម្បីបង្កើតរឿងខ្លះ។ ប៉ុន្តែនៅពេលដែលពួកគេត្រូវបានបង្កើតរួចហើយ បន្ទាប់ពីការពិតពួកគេហាក់ដូចជាជាក់ស្តែង និងសូម្បីតែ banal ។ ពីស៊េរី "អ្វីដែលវាអាចទៅរួច?" ។
ចាប់ពីកំណែដំបូងបំផុត របារស្ថានភាពនៅផ្នែកខាងក្រោមនៃបង្អួច Microsoft Excel ជាប្រពៃណីបង្ហាញចំនួនសរុបសម្រាប់ក្រឡាដែលបានជ្រើសរើស៖
ប្រសិនបើចង់បាន វាក៏អាចចុចកណ្ដុរស្ដាំលើលទ្ធផលទាំងនេះ ហើយជ្រើសរើសពីម៉ឺនុយបរិបទដែលមុខងារដែលយើងចង់ឃើញ៖
ហើយថ្មីៗនេះ នៅក្នុងការអាប់ដេត Excel ចុងក្រោយបំផុត អ្នកអភិវឌ្ឍន៍ Microsoft បានបន្ថែមមុខងារដ៏សាមញ្ញ ប៉ុន្តែឆ្លាតវៃ - ឥឡូវនេះ នៅពេលអ្នកចុចលើលទ្ធផលទាំងនេះ ពួកគេត្រូវបានចម្លងទៅក្ដារតម្បៀតខ្ទាស់!
សម្រស់។
ប៉ុន្តែចុះយ៉ាងណាចំពោះអ្នកដែលមិនទាន់ (ឬរួចទៅហើយ?) មានកំណែ Excel បែបនេះ? នេះគឺជាកន្លែងដែលម៉ាក្រូសាមញ្ញអាចជួយបាន។
ការចម្លងផលបូកនៃក្រឡាដែលបានជ្រើសរើសទៅក្ដារតម្បៀតខ្ទាស់ដោយប្រើម៉ាក្រូ
បើកនៅក្នុងផ្ទាំង អ្នកអភិវឌ្ឍ (អ្នកអភិវឌ្ឍន៍) កម្មវិធីនិពន្ធ Visual Basic ឬប្រើផ្លូវកាត់ក្តារចុចនេះ។ alt+F11. បញ្ចូលម៉ូឌុលទទេថ្មីតាមរយៈម៉ឺនុយ បញ្ចូល - ម៉ូឌុល ហើយចម្លងកូដខាងក្រោមនៅទីនោះ៖
Sub SumSelected() ប្រសិនបើ TypeName(Selection) <> "Range" បន្ទាប់មក Exit Sub With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}") .SetText WorksheetFunction.Sum(SelectionClip) .Put Ending WorksheetFunction.Sum(Selection) .Put
តក្កវិជ្ជារបស់វាគឺសាមញ្ញ៖
- ដំបូងមក "ការការពារពីមនុស្សល្ងីល្ងើ" - យើងពិនិត្យមើលអ្វីដែលពិតជាត្រូវបានបន្លិច។ ប្រសិនបើមិនមានក្រឡាត្រូវបានជ្រើសរើស (ប៉ុន្តែឧទាហរណ៍ គំនូសតាង) បន្ទាប់មកចេញពីម៉ាក្រូ។
- បន្ទាប់មកដោយប្រើពាក្យបញ្ជា ទទួលវត្ថុ យើងបង្កើតវត្ថុទិន្នន័យថ្មីមួយ ដែលផលបូកនៃក្រឡាដែលបានជ្រើសរើសរបស់យើងនឹងត្រូវបានរក្សាទុកនៅពេលក្រោយ។ តាមពិតលេខកូដអក្សរក្រមលេខវែង និងមិនអាចយល់បាន គឺជាតំណភ្ជាប់ទៅកាន់សាខាចុះបញ្ជីវីនដូ ដែលបណ្ណាល័យមានទីតាំងនៅ Microsoft ទម្រង់ 2.0 បណ្ណាល័យវត្ថុដែលអាចបង្កើតវត្ថុបែបនេះ។ ជួនកាលល្បិចនេះក៏ត្រូវបានគេហៅថាផងដែរ។ ការចងចុងដោយបង្កប់ន័យ. ប្រសិនបើអ្នកមិនប្រើវាទេ នោះអ្នកនឹងត្រូវបង្កើតតំណភ្ជាប់ទៅកាន់បណ្ណាល័យនេះនៅក្នុងឯកសារតាមរយៈម៉ឺនុយ ឧបករណ៍ - ឯកសារយោង.
- ផលបូកនៃក្រឡាដែលបានជ្រើសរើសត្រូវបានចាត់ទុកថាជាពាក្យបញ្ជា សន្លឹកកិច្ចការ.ផលបូក(ការជ្រើសរើស)ហើយបន្ទាប់មកចំនួនលទ្ធផលត្រូវបានដាក់នៅលើក្តារតម្បៀតខ្ទាស់ដោយប្រើពាក្យបញ្ជា PutInClipboard
ដើម្បីភាពងាយស្រួលក្នុងការប្រើប្រាស់ អ្នកអាចកំណត់ម៉ាក្រូនេះទៅផ្លូវកាត់ក្តារចុចដោយប្រើប៊ូតុង ម៉ាក្រូ ផ្ទាំង អ្នកអភិវឌ្ឍ (អ្នកអភិវឌ្ឍន៍ — ម៉ាក្រូ).
ហើយប្រសិនបើអ្នកចង់ឃើញអ្វីដែលពិតជាត្រូវបានចម្លងបន្ទាប់ពីដំណើរការម៉ាក្រូ អ្នកអាចបើកបន្ទះក្ដារតម្បៀតខ្ទាស់ដោយប្រើព្រួញតូចនៅជ្រុងខាងស្តាំក្រោមនៃក្រុមដែលត្រូវគ្នានៅលើ មេ (ទំព័រដើម) ផ្ទាំង:
មិនត្រឹមតែបរិមាណប៉ុណ្ណោះទេ
ប្រសិនបើបន្ថែមលើចំនួន banal អ្នកចង់បានអ្វីផ្សេងទៀត នោះអ្នកអាចប្រើមុខងារណាមួយដែលវត្ថុផ្តល់ឱ្យយើង មុខងារសន្លឹកកិច្ចការ:
ឧទាហរណ៍មាន៖
- ផលបូក - ផលបូក
- មធ្យម - មធ្យមនព្វន្ធ
- រាប់ - ចំនួនកោសិកាដែលមានលេខ
- CountA - ចំនួនកោសិកាដែលបានបំពេញ
- CountBlank - ចំនួនក្រឡាទទេ
- អប្បបរមា - តម្លៃអប្បបរមា
- អតិបរមា - តម្លៃអតិបរមា
- មធ្យម - មធ្យម (តម្លៃកណ្តាល)
- …ល។
ចុះប្រសិនបើជួរដេក ឬជួរឈរត្រូវបានលាក់ (ដោយដៃ ឬដោយតម្រង) នៅក្នុងជួរដែលបានជ្រើសរើស? ដើម្បីកុំឱ្យពួកគេយកទៅក្នុងគណនីសរុប យើងនឹងត្រូវការកែប្រែកូដរបស់យើងបន្តិច ដោយបន្ថែមទៅវត្ថុ ការជ្រើសរើស អចលនទ្រព្យ កោសិកាពិសេស(xlCellTypeVisible):
Sub SumVisible() ប្រសិនបើ TypeName(Selection) <> "Range" បន្ទាប់មក Exit Sub With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}") .SetText WorksheetFunction.Sum(Selection.Specials.TexlCells) PutInClipboard បញ្ចប់ដោយ End Sub
ក្នុងករណីនេះ ការគណនានៃមុខងារសរុបណាមួយនឹងត្រូវបានអនុវត្តចំពោះតែក្រឡាដែលអាចមើលឃើញប៉ុណ្ណោះ។
ប្រសិនបើអ្នកត្រូវការរូបមន្តរស់នៅ
ប្រសិនបើអ្នកសុបិន្តឡើង អ្នកអាចបង្កើតសេណារីយ៉ូ នៅពេលដែលវាល្អប្រសើរជាងមុនក្នុងការចម្លងមិនមែនជាលេខ (ថេរ) ប៉ុន្តែជារូបមន្តរស់នៅទៅក្នុងសតិបណ្ដោះអាសន្ន ដែលគណនាចំនួនសរុបដែលយើងត្រូវការសម្រាប់ក្រឡាដែលបានជ្រើសរើស។ ក្នុងករណីនេះ អ្នកនឹងត្រូវកាវបិទរូបមន្តពីបំណែក ដោយបន្ថែមការដកចេញនូវសញ្ញាដុល្លារ ហើយជំនួសសញ្ញាក្បៀស (ដែលត្រូវបានប្រើជាសញ្ញាបំបែករវាងអាសយដ្ឋាននៃជួរដែលបានជ្រើសរើសជាច្រើននៅក្នុង VBA) ដោយប្រើសញ្ញាក្បៀស៖
Sub SumFormula() ប្រសិនបើ TypeName(Selection) <> "Range" បន្ទាប់មក Exit Sub With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}") .SetText "=СУММ(" & Replacection.Replace អាស័យដ្ឋាន ",", ";"), "$", "") & ")".PutInClipboard End With End Sub
ការបូកសរុបជាមួយនឹងលក្ខខណ្ឌបន្ថែម
ហើយចុងក្រោយ សម្រាប់មនុស្សឆ្កួតទាំងស្រុង អ្នកអាចសរសេរម៉ាក្រូដែលនឹងសង្ខេបមិនមែនគ្រប់ក្រឡាដែលបានជ្រើសរើសនោះទេ ប៉ុន្តែមានតែកោសិកាដែលបំពេញលក្ខខណ្ឌដែលបានផ្តល់ឱ្យប៉ុណ្ណោះ។ ដូច្នេះ ជាឧទាហរណ៍ ម៉ាក្រូនឹងមើលទៅដូចដែលដាក់ផលបូកនៃក្រឡាដែលបានជ្រើសរើសទៅក្នុង Buffer ប្រសិនបើតម្លៃរបស់វាធំជាង 5 ហើយក្នុងពេលតែមួយពួកវាត្រូវបានបំពេញដោយពណ៌ណាមួយ៖
Sub CustomCalc() Dim myRange ជា Range ប្រសិនបើ TypeName(Selection) <> "Range" បន្ទាប់មក Exit Sub សម្រាប់ cell នីមួយៗក្នុង Selection ប្រសិនបើ cell.Value > 5 និង cell.Interior.ColorIndex <> xlNone បន្ទាប់មក ប្រសិនបើ myRange មិនមានអ្វីទេ បន្ទាប់មកកំណត់ myRange = cell Else Set myRange = Union(myRange, cell) End If End If Next Cell With GetObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}") .SetText WorksheetFunction.Sum(myRange) .PutInClip
ដូចដែលអ្នកអាចស្រមៃបានយ៉ាងងាយស្រួល លក្ខខណ្ឌអាចត្រូវបានកំណត់យ៉ាងពិតប្រាកដណាមួយ - រហូតដល់ទម្រង់ក្រឡា - និងក្នុងបរិមាណណាមួយ (រួមទាំងដោយការភ្ជាប់ពួកវាជាមួយប្រតិបត្តិករឡូជីខល ឬ ឬ និង)។ មានកន្លែងច្រើនសម្រាប់ការស្រមើលស្រមៃ។
- បំលែងរូបមន្តទៅជាតម្លៃ (៦វិធី)
- តើម៉ាក្រូជាអ្វី របៀបប្រើពួកវា កន្លែងដែលត្រូវបញ្ចូលកូដ Visual Basic
- ព័ត៌មានមានប្រយោជន៍នៅក្នុងរបារស្ថានភាពនៃ Microsoft Excel