VBA இல் எக்செல் செல்கள் மற்றும் ரேஞ்ச் செயல்பாடுகளை புரிந்துகொள்வது

VBA இல் எக்செல் செல்கள் மற்றும் ரேஞ்ச் செயல்பாடுகளை புரிந்துகொள்வது

எக்செல் சக்தி வாய்ந்தது. நீங்கள் அதை அதிகமாகப் பயன்படுத்தினால், சூத்திரங்கள் அல்லது ஆட்டோஃபார்மேட்டிங் பயன்படுத்தி பல தந்திரங்களை நீங்கள் ஏற்கனவே அறிந்திருக்கலாம், ஆனால் அதைப் பயன்படுத்துங்கள் செல்கள் மற்றும் சரகம் VBA இல் செயல்படுகிறது, நீங்கள் உங்கள் எக்செல் பகுப்பாய்வுகளை ஒரு புதிய நிலைக்கு உயர்த்தலாம்.





VBA இல் செல்கள் மற்றும் ரேஞ்ச் செயல்பாடுகளைப் பயன்படுத்துவதில் உள்ள பிரச்சனை என்னவென்றால், மேம்பட்ட நிலைகளில், இந்த செயல்பாடுகள் உண்மையில் எப்படி வேலை செய்கின்றன என்பதைப் புரிந்துகொள்ள பெரும்பாலான மக்களுக்கு கடினமாக உள்ளது. அவற்றைப் பயன்படுத்துவது மிகவும் குழப்பமானதாக இருக்கும். நீங்கள் கற்பனை செய்யாத வழிகளில் அவற்றை எவ்வாறு பயன்படுத்துவது என்பது இங்கே.





செல் செயல்பாடு

செல்கள் மற்றும் வரம்பு செயல்பாடுகள் உங்களுக்குச் சொல்லட்டும் உங்கள் VBA ஸ்கிரிப்ட் உங்கள் பணித்தாளில் நீங்கள் எங்கு பெற விரும்புகிறீர்கள் அல்லது தரவை வைக்க வேண்டும். இரண்டு கலங்களுக்கு இடையிலான முக்கிய வேறுபாடு அவை குறிப்பிடுவதுதான்.





செல்கள் வழக்கமாக ஒரு நேரத்தில் ஒரு கலத்தைக் குறிப்பிடும் சரகம் ஒரே நேரத்தில் கலங்களின் குழுவைக் குறிக்கிறது. இந்த செயல்பாட்டிற்கான வடிவம் செல்கள் (வரிசை, நெடுவரிசை) .

இது முழு தாளில் உள்ள ஒவ்வொரு கலத்தையும் குறிக்கிறது. செல்கள் செயல்பாடு ஒரு கலத்தைக் குறிப்பிடாத ஒரு எடுத்துக்காட்டு இது:



Worksheets('Sheet1').Cells

இது மேல் வரிசையின் இடதுபுறத்தில் இருந்து மூன்றாவது கலத்தைக் குறிக்கிறது. செல் C1:

Worksheets('Sheet1').Cells(3)

பின்வரும் குறியீடு குறிப்பு செல் D15:





Worksheets('Sheet1').Cells(15,4)

நீங்கள் விரும்பினால், கலங்கள் D15 ஐ 'கலங்கள் (15,' D ')' --- உடன் குறிப்பிடலாம்-நீங்கள் நெடுவரிசை கடிதத்தைப் பயன்படுத்த அனுமதிக்கப்படுவீர்கள்.

நெடுவரிசை மற்றும் கலத்திற்கு ஒரு எண்ணைப் பயன்படுத்தி ஒரு கலத்தைக் குறிப்பிடுவதில் நிறைய நெகிழ்வுத்தன்மை உள்ளது, குறிப்பாக ஸ்கிரிப்ட்கள் மூலம் வளைய அதிக எண்ணிக்கையிலான செல்கள் (மற்றும் அவற்றில் கணக்கீடுகளைச் செய்கின்றன) மிக விரைவாக. கீழே நாம் அதை இன்னும் விரிவாகப் பார்ப்போம்.





ரேஞ்ச் செயல்பாடு

பல வழிகளில், ரேஞ்ச் செயல்பாடு கலங்களைப் பயன்படுத்துவதை விட மிகவும் சக்தி வாய்ந்தது, ஏனென்றால் அது ஒரே ஒரு செல் அல்லது குறிப்பிட்ட அளவிலான கலங்களை ஒரே நேரத்தில் குறிப்பிட உதவுகிறது. நீங்கள் ஒரு ரேஞ்ச் செயல்பாட்டின் மூலம் வளைய விரும்ப மாட்டீர்கள், ஏனென்றால் கலங்களுக்கான குறிப்புகள் எண்கள் அல்ல (செல்கள் அதன் உள்ளே செயல்பாட்டை உட்பொதிக்காவிட்டால்).

இந்த செயல்பாட்டிற்கான வடிவம் வரம்பு (செல் #1, செல் #2) . ஒவ்வொரு கலமும் ஒரு எழுத்து எண் மூலம் குறிக்கப்படும்.

சில உதாரணங்களைப் பார்ப்போம்.

ஆண்ட்ராய்டுக்கான சிறந்த குறிப்பு எடுக்கும் பயன்பாடு

இங்கே, வரம்பு செயல்பாடு செல் A5 ஐக் குறிக்கிறது:

Worksheets('Sheet1').Range('A5')

இங்கே, வரம்பு செயல்பாடு A1 முதல் E20 வரை உள்ள அனைத்து கலங்களையும் குறிக்கிறது:

Worksheets('Sheet1').Range('A1:E20')

மேலே குறிப்பிட்டுள்ளபடி, நீங்கள் எண்-எழுத்து செல் பணிகளைப் பயன்படுத்த வேண்டியதில்லை. தாளில் ஒரு வரம்பை அடையாளம் காண நீங்கள் உண்மையில் ஒரு ரேஞ்ச் செயல்பாட்டின் உள்ளே இரண்டு செல் செயல்பாடுகளைப் பயன்படுத்தலாம்:


With Worksheets('Sheet1')
.Range(.Cells(1, 1), _
.Cells(20, 5))
End With

மேலே உள்ள குறியீடு வரம்பு ('A1: E20') செயல்பாட்டின் அதே வரம்பைக் குறிக்கிறது. அதைப் பயன்படுத்துவதில் உள்ள மதிப்பு என்னவென்றால், சுழல்களைப் பயன்படுத்தி வரம்புகளுடன் மாறும் வகையில் செயல்படும் குறியீட்டை எழுத இது உங்களை அனுமதிக்கும்.

செல்கள் மற்றும் ரேஞ்ச் செயல்பாடுகளை எவ்வாறு வடிவமைப்பது என்பதை இப்போது நீங்கள் புரிந்துகொண்டுள்ளீர்கள், உங்கள் VBA குறியீட்டில் இந்த செயல்பாடுகளை எவ்வாறு ஆக்கப்பூர்வமாகப் பயன்படுத்தலாம் என்பதைத் தெரிந்துகொள்வோம்.

செல்கள் செயல்பாட்டுடன் தரவைச் செயலாக்குகிறது

கலங்களின் பல வரம்புகளில் நீங்கள் செய்ய விரும்பும் சிக்கலான சூத்திரம் உங்களிடம் இருக்கும்போது செல்கள் செயல்பாடு மிகவும் பயனுள்ளதாக இருக்கும். இந்த வரம்புகள் பல தாள்களிலும் இருக்கலாம்.

ஒரு எளிய உதாரணத்தை எடுத்துக் கொள்வோம். 11 பேர் கொண்ட ஒரு விற்பனை குழுவை நீங்கள் நிர்வகிக்கிறீர்கள் என்று சொல்லலாம், ஒவ்வொரு மாதமும் நீங்கள் அவர்களின் செயல்திறனைப் பார்க்க விரும்புகிறீர்கள்.

உங்களிடம் இருக்கலாம் தாள் 1 அது அவர்களின் விற்பனை எண்ணிக்கையையும் அவற்றின் விற்பனை அளவையும் கண்காணிக்கிறது.

அன்று தாள் 2 உங்கள் நிறுவனத்தின் வாடிக்கையாளர்களிடமிருந்து கடந்த 30 நாட்களாக அவர்களின் பின்னூட்ட மதிப்பீட்டை நீங்கள் கண்காணிக்கிறீர்கள்.

இரண்டு தாள்களின் மதிப்புகளைப் பயன்படுத்தி முதல் தாளில் போனஸைக் கணக்கிட விரும்பினால், இதைச் செய்ய பல வழிகள் உள்ளன. இரண்டு தாள்களிலும் தரவைப் பயன்படுத்தி கணக்கீட்டைச் செய்யும் முதல் கலத்தில் ஒரு சூத்திரத்தை எழுதி அதை கீழே இழுக்கவும். அது வேலை செய்யும்.

இதற்கு மாற்றாக VBA ஸ்கிரிப்டை உருவாக்கி, நீங்கள் தாளைத் திறக்கும்போதெல்லாம் இயக்கலாம் அல்லது தாளில் உள்ள கட்டளை பொத்தானால் தூண்டப்படலாம், அதனால் கணக்கிடும்போது நீங்கள் கட்டுப்படுத்தலாம். எப்படியும் ஒரு வெளிப்புற கோப்பிலிருந்து அனைத்து விற்பனைத் தரவையும் இழுக்க நீங்கள் ஒரு VBA ஸ்கிரிப்டைப் பயன்படுத்தலாம்.

அந்த நேரத்தில் அதே ஸ்கிரிப்டில் போனஸ் நெடுவரிசையின் கணக்கீடுகளை ஏன் தூண்டக்கூடாது?

செல்கள் செயல்பாட்டில் செயல்படுகின்றன

நீங்கள் இதற்கு முன்பு எக்செல் இல் VBA ஐ எழுதவில்லை என்றால், நீங்கள் டெவலப்பர் மெனு உருப்படியை இயக்க வேண்டும். இதைச் செய்ய, செல்லவும் கோப்பு > விருப்பங்கள் . கிளிக் செய்யவும் ரிப்பனைத் தனிப்பயனாக்கவும் . இறுதியாக, இடது பலகத்திலிருந்து டெவலப்பரைத் தேர்ந்தெடுக்கவும். கூட்டு அது வலது பலகத்தில், தேர்வுப்பெட்டி தேர்ந்தெடுக்கப்பட்டிருப்பதை உறுதி செய்யவும்.

இப்போது, ​​நீங்கள் கிளிக் செய்யும் போது சரி மற்றும் முதன்மை தாள் திரும்ப, நீங்கள் டெவலப்பர் மெனு விருப்பத்தை பார்ப்பீர்கள்.

நீங்கள் பயன்படுத்தலாம் செருக கட்டளை பொத்தானைச் செருக மெனு அல்லது கிளிக் செய்யவும் கோட் பார்க்கவும் குறியீட்டு தொடங்க.

இந்த எடுத்துக்காட்டில் பணிப்புத்தகம் திறக்கப்படும் ஒவ்வொரு முறையும் ஸ்கிரிப்டை இயக்கச் செய்வோம். இதைச் செய்ய, கிளிக் செய்யவும் கோட் பார்க்கவும் டெவலப்பர் மெனுவிலிருந்து, பின்வரும் புதிய செயல்பாட்டை குறியீடு விண்டோவில் ஒட்டவும்.

Private Sub Workbook_Open()
End Sub

உங்கள் குறியீடு சாளரம் இது போல் இருக்கும்.

இப்போது நீங்கள் கணக்கீட்டைக் கையாள குறியீட்டை எழுதத் தயாராக உள்ளீர்கள். ஒற்றை வளையத்தைப் பயன்படுத்தி, நீங்கள் 11 பணியாளர்களையும் கடந்து செல்லலாம், மேலும் செல்கள் செயல்பாட்டைக் கொண்டு கணக்கீட்டிற்குத் தேவையான மூன்று மாறிகளை இழுக்கலாம்.

ஒவ்வொரு தனி கலத்தையும் அடையாளம் காண கலங்களின் செயல்பாட்டில் வரிசை மற்றும் நெடுவரிசை அளவுருக்கள் உள்ளன என்பதை நினைவில் கொள்ளுங்கள். வரிசையை 'x' ஆக்குவோம், ஒவ்வொரு நெடுவரிசையின் தரவையும் கோர ஒரு எண்ணைப் பயன்படுத்துங்கள். வரிசைகளின் எண்ணிக்கை ஊழியர்களின் எண்ணிக்கை, எனவே இது 1 முதல் 11 வரை இருக்கும்

இறுதி கணக்கீடு மொத்த போனஸ் மதிப்பெண்ணில் 100 சதவிகிதம் வரை சேர்க்க பின்வரும் சதவீதங்களைப் பயன்படுத்துகிறது. இது ஒரு சிறந்த விற்பனை எண்ணிக்கை 50, விற்பனை அளவு $ 50,000 மற்றும் பின்னூட்ட மதிப்பெண் 10 ஆகியவற்றை அடிப்படையாகக் கொண்டது.

  • (விற்பனை எண்ணிக்கை/50) x 0.4
  • (விற்பனை தொகுதி/50,000) x 0.5
  • (பின்னூட்ட மதிப்பெண்/10) x 0.1

இந்த எளிய அணுகுமுறை விற்பனை ஊழியர்களுக்கு எடையுள்ள போனஸை வழங்குகிறது. 50, ஒரு தொகை $ 50,000, மற்றும் ஒரு மதிப்பெண் 10 --- அவர்கள் மாதத்திற்கான முழு அதிகபட்ச போனஸைப் பெறுகிறார்கள். இருப்பினும், எந்தவொரு காரணியிலும் சரியான எதுவும் போனஸைக் குறைக்கிறது. இலட்சியத்தை விட சிறந்த எதுவும் போனஸை அதிகரிக்கிறது.

இப்போது அந்த தர்க்கம் அனைத்தையும் மிக எளிய, குறுகிய VBA ஸ்கிரிப்டில் எப்படி இழுக்க முடியும் என்று பார்ப்போம்:

Private Sub Workbook_Open()
For x = 2 To 12
Worksheets('Sheet1').Cells(x, 4) = (Worksheets('Sheet1').Cells(x, 2).Value / 50) * 0.4 _
+ (Worksheets('Sheet1').Cells(x, 3).Value / 50000) * 0.5 _
+ (Worksheets('Sheet2').Cells(x, 2).Value / 10) * 0.1 _
Next x
End Sub

இந்த ஸ்கிரிப்டின் வெளியீடு இப்படித்தான் இருக்கும்.

நேரலைக்குச் செல்ல டிக்டோக்கில் எத்தனை பின்தொடர்பவர்கள்

போனஸ் நெடுவரிசை சதவீதத்தை விட உண்மையான டாலர் போனஸைக் காட்ட விரும்பினால், நீங்கள் அதை அதிகபட்ச போனஸ் தொகையால் பெருக்கலாம். இன்னும் சிறப்பாக, அந்தத் தொகையை மற்றொரு தாளில் உள்ள கலத்தில் வைத்து, உங்கள் குறியீட்டில் குறிப்பிடவும். இது உங்கள் குறியீட்டைத் திருத்தாமல் பின்னர் மதிப்பை மாற்றுவதை எளிதாக்கும்.

செல் செயல்பாட்டின் அழகு என்னவென்றால், தரவை இழுக்க சில அழகான படைப்பு தர்க்கங்களை நீங்கள் உருவாக்க முடியும் பல செல்கள் பல வேறுபட்ட தாள்களில், மற்றும் சிலவற்றைச் செய்யுங்கள் அழகான சிக்கலான கணக்கீடுகள் அவர்களுடன்.

கலங்கள் செயல்பாட்டைப் பயன்படுத்தி கலங்களில் அனைத்து வகையான செயல்களையும் நீங்கள் செய்யலாம் --- செல்களை அழித்தல், எழுத்துரு வடிவமைப்பை மாற்றுவது மற்றும் பல.

நீங்கள் மேலும் செய்யக்கூடிய அனைத்தையும் ஆராய, பாருங்கள் மைக்ரோசாப்ட் MSDN பக்கம் செல்கள் பொருளுக்கு.

ரேஞ்ச் செயல்பாட்டுடன் கலங்களை வடிவமைத்தல்

பல செல்களை ஒரு நேரத்தில் சுழற்றுவதற்கு, செல்களின் செயல்பாடு சரியானது. ஆனால் நீங்கள் ஒரே நேரத்தில் முழு அளவிலான கலங்களுக்கு ஏதாவது பயன்படுத்த விரும்பினால், ரேஞ்ச் செயல்பாடு மிகவும் திறமையானது.

சில நிபந்தனைகள் பூர்த்தி செய்யப்பட்டால், ஸ்கிரிப்டைப் பயன்படுத்தி கலங்களின் வரம்பை வடிவமைப்பதே இதற்கான ஒரு பயன்பாட்டு வழக்கு.

உதாரணமாக, அனைத்து விற்பனை ஊழியர்களின் மொத்த விற்பனையின் மொத்த தொகை $ 400,000 ஐ தாண்டினால், அணி கூடுதல் போனஸ் சம்பாதித்ததைக் குறிக்க, போனஸ் நெடுவரிசையில் உள்ள அனைத்து கலங்களையும் பச்சை நிறத்தில் முன்னிலைப்படுத்த விரும்புகிறீர்கள்.

நீங்கள் அதை எப்படி செய்யலாம் என்று பார்ப்போம் ஒரு IF அறிக்கை .

Private Sub Workbook_Open()
If Worksheets('Sheet1').Cells(13, 3).Value > 400000 Then
ActiveSheet.Range('D2:D12').Interior.ColorIndex = 4
End If
End Sub

இது இயங்கும்போது, ​​கலமானது குழு இலக்கை விட அதிகமாக இருந்தால், வரம்பிலுள்ள அனைத்து கலங்களும் பச்சை நிறத்தில் நிரப்பப்படும்.

ரேஞ்ச் செயல்பாட்டைப் பயன்படுத்தி கலங்களின் குழுக்களில் நீங்கள் செய்யக்கூடிய பல செயல்களுக்கு இது ஒரு எளிய எடுத்துக்காட்டு. நீங்கள் செய்யக்கூடிய மற்ற விஷயங்கள்:

  • குழுவைச் சுற்றி ஒரு அவுட்லைனைப் பயன்படுத்துங்கள்
  • கலங்களின் வரம்பிற்குள் உரையின் எழுத்துப்பிழை சரிபார்க்கவும்
  • கலங்களை அழிக்கவும், நகலெடுக்கவும் அல்லது வெட்டவும்
  • 'கண்டுபிடி' முறை மூலம் ஒரு வரம்பில் தேடுங்கள்
  • இன்னும் அதிகம்

படிக்க உறுதி செய்யவும் மைக்ரோசாப்ட் MSDN பக்கம் ரேஞ்ச் பொருள் அனைத்து சாத்தியங்களையும் பார்க்க.

அடுத்த நிலைக்கு எக்செல் எடுக்கவும்

செல்கள் மற்றும் ரேஞ்ச் செயல்பாடுகளுக்கு இடையிலான வேறுபாடுகளை இப்போது நீங்கள் புரிந்துகொண்டுள்ளீர்கள், உங்கள் VBA ஸ்கிரிப்டை அடுத்த கட்டத்திற்கு எடுத்துச் செல்ல வேண்டிய நேரம் இது. எக்செல் இல் எண்ணும் செயல்பாடுகளைச் சேர்ப்பது பற்றிய டானின் கட்டுரை உங்கள் தரவுத் தொகுப்புகள் அனைத்திலும் மிக விரைவாக மதிப்புகளைக் குவிக்கும் இன்னும் மேம்பட்ட ஸ்கிரிப்ட்களை உருவாக்க அனுமதிக்கும்.

நீங்கள் எக்செல் இல் VBA உடன் தொடங்குகிறீர்கள் என்றால், எங்களிடம் ஒரு அருமையான கிடைத்தது என்பதை மறந்துவிடாதீர்கள் எக்செல் VBA க்கான அறிமுக வழிகாட்டி உங்களுக்கும்.

பகிர் பகிர் ட்வீட் மின்னஞ்சல் கேனான் எதிராக நிகான்: எந்த கேமரா பிராண்ட் சிறந்தது?

கேனான் மற்றும் நிகான் கேமரா துறையில் இரண்டு பெரிய பெயர்கள். ஆனால் எந்த பிராண்ட் கேமராக்கள் மற்றும் லென்ஸ்களின் சிறந்த வரிசையை வழங்குகிறது?

அடுத்து படிக்கவும்
தொடர்புடைய தலைப்புகள்
  • உற்பத்தித்திறன்
  • நிரலாக்க
  • காட்சி அடிப்படை நிரலாக்க
  • மைக்ரோசாப்ட் எக்செல்
எழுத்தாளர் பற்றி ரியான் டியூப்(942 கட்டுரைகள் வெளியிடப்பட்டன)

ரியான் மின் பொறியியலில் பிஎஸ்சி பட்டம் பெற்றவர். அவர் ஆட்டோமேஷன் பொறியியலில் 13 ஆண்டுகள், ஐடியில் 5 ஆண்டுகள் பணியாற்றினார், இப்போது ஒரு ஆப்ஸ் பொறியாளராக உள்ளார். MakeUseOf இன் முன்னாள் நிர்வாக ஆசிரியர், அவர் தரவு காட்சிப்படுத்தல் குறித்த தேசிய மாநாடுகளில் பேசினார் மற்றும் தேசிய தொலைக்காட்சி மற்றும் வானொலியில் இடம்பெற்றார்.

ரியான் டியூபிலிருந்து மேலும்

எங்கள் செய்திமடலுக்கு குழுசேரவும்

தொழில்நுட்ப குறிப்புகள், மதிப்புரைகள், இலவச மின் புத்தகங்கள் மற்றும் பிரத்யேக ஒப்பந்தங்களுக்கு எங்கள் செய்திமடலில் சேரவும்!

குழுசேர இங்கே சொடுக்கவும்